0% found this document useful (0 votes)
32 views

Software Testing

The document discusses software testing, including definitions of testing, objectives of testing like finding bugs, and testing methodologies. It covers the software testing lifecycle and phases like requirements analysis, test planning, test case design, test execution, and test closure. It also discusses different testing levels from unit to system testing and types of testing.

Uploaded by

nandini
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views

Software Testing

The document discusses software testing, including definitions of testing, objectives of testing like finding bugs, and testing methodologies. It covers the software testing lifecycle and phases like requirements analysis, test planning, test case design, test execution, and test closure. It also discusses different testing levels from unit to system testing and types of testing.

Uploaded by

nandini
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Seminar

On
Software Testing

Submitted By:
Potla.Nandini
206C1A0566
Content
• Introduction
• What is Software Testing ?
• Objectives of Testing
• Goals of Testing
• principles of Testing
• Testing Methodologies
• Software Testing lifecycle – Phases
• Testing Levels
• Types of Performance Testing
• Conclusion
Introduction
• Testing is a process used to help identify the
correctness, completeness and quality of developed
computer software.
• There are many approaches to Test.
purpose of Testing:
• quality Assurance,verification,Validation
• To find bugs before the product is released to
customer’s.
What is Software Testing?
.Software Testing is a method to assess the
functionality of the software program. The process
checks whether the actual software matches the
expected requirements and ensures the software is
bug-free.
.The purpose of software testing is to identify the
errors, faults, or missing requirements in contrast to
actual requirements.
.The aim of software testing is to evaluate and verify
that a software product or applications does supposed
to do
Software testing can be divided into two steps:

• Verification: It refers to the set of tasks that ensure that the


software correctly implements a specific function. It means
“Are we building the product right?”.
• Validation: It refers to a different set of tasks that ensure that
the software that has been built is traceable to customer
requirements. It means “Are we building the right product?”
Objectives of testing

Uncover as many as errors (or bugs) as


possible in a given timeline.
Demonstrate a given software product
matching its requirement specifications.
Validate the quality of a software testing using
the minimum cost and efforts.
To determining user acceptability
Error,Bug,Defect,Failure

• Error: Error is a situation that happens when the


developer fails to understand a requirement definition
and hence that misunderstanding gets translated into
buggy code.
• Defect:A defect refers to a situation when the
application is not working as per the requirement.
• Bug:A bug refers to defects which means that the
software product or the application is not working as per
the requirements.
• Failure:Failure is the accumulation of several defects
that ultimately lead to Software failure and results in the
loss of information
Goals of Testing
Detecting bugs as soon as feasible in any situation.
• Avoiding errors in a project’s and product’s final versions.
• Inspect to see whether the customer requirements criterion has
been satisfied.
• Last but not least, the primary purpose of testing is to gauge the
project and product level of quality.
• Evaluate properties of software
– Reliability
– Performance
– Memory Usage
– Security
– Usability
Principles of Testing
Testing Methodologies

. Testing methodologies
are specific strategies for
testing all of the pieces of
your software to make
sure it behaves as
expected.
. These strategies include
many ways to test
software, such as unit
testing, integration testing,
performance testing, and
more.
White box testing
• It is a software testing technique that involves
testing the internal structure and workings of a
software application.
• The tester has access to the source code and uses
this knowledge to design test cases
• It analyze the internal structures the used data
structures, internal design, code structure
White-box Testing
Black Box Testing

§ No knowledge of internal program design or code


required.
§ Tests are based on requirements and functionality.
Functional Testing
• It is a type of Software Testing in which the system is
tested against the functional requirements and
specifications.
• Functional testing ensures that the requirements or
specifications are properly satisfied by the application.

Non Functional Testing


• It is a type of Software Testing that is performed to verify
the non-functional requirements of the application.
• It verifies whether the behavior of the system is as per
the requirement or not.
Software Testing lifecycle - Phases
Requirements Analysis

• Requirement Analysis is the first step of the Software


Testing Life Cycle (STLC).
• In this phase quality assurance team understands the
requirements like what is to be tested.
• If anything is missing or not understandable then the
quality assurance team meets with the stakeholders to
better understand the detailed knowledge of
requirements.
Test Planning
• Test Planning is the most efficient phase of the software
testing life cycle where all testing plans are defined.
• In this phase manager of the testing, team calculates the
estimated effort and cost for the testing work.
• This phase gets started once the requirement-gathering
phase is completed.
Test Case Design and Development
• It gets started once the test planning phase is completed.
• Testing team notes all test cases
• The testing team also prepares the required test data for the
testing.

Environment Setup
• It is a vital part of the STLC.
• Basically,the test environment decides the conditions on which
software is tested.
• This is independent activity and can be started along with test
case development. In this process, the testing team is not
involved.
Test Execution

• After the test case development and test environment setup test
execution phase gets started.
• In this phase testing team starts executing test cases based on
prepared test cases in the earlier step.

Test Clousre
• Test closure is the final stage of the Software Testing Life Cycle
(STLC) where all testing-related activities are completed and
documented.
• The main objective of the test closure stage is to ensure that all
testing-related activities have been completed and that the software
is ready for release.
Testing Levels
Unit testing

Tests each module individually.


Follows a white box testing (Logic of the program).
Done by developers.
2 types of Unit Testing: Manual, and Automated.
Manual: involves step by step testing of an application’s
performance without using any test script.
Automation: It utilizes test automation frameworks.
Integration testing

Once all the modules have been unit tested, integration


testing is performed.
It is systematic testing.
Produce tests to identify errors associated with interfacing.
Done by Testers
Types:
Big Bang Integration testing
Top Down Integration testing
Bottom Up Integration testing
Mixed Integration testing
System testing

• Evaluates the overall functionality and performance of a


complete and fully integrated software solution.
• Verifies that all system elements work properly and that
overall system function and performance has been
achieved.
• Done by Testers
• Types:
Alpha Testing
Beta Testing
Acceptance Testing
Performance Testing
Alpha Testing
It is carried out by the test team within the developing organization .

Beta Testing
It is performed by a selected group of friendly customers.

Acceptance Testing
It is performed by the customer to determine whether to accept or reject
the delivery of the system.

Performance Testing
It is carried out to check whether the system meets the nonfunctional
requirements identified in the SRS document.
Types of Performance Testing
Stress Testing
Volume Testing
Configuration Testing
Compatibility Testing
Regression Testing
Recovery Testing
Maintenance Testing
Documentation Testing
Usability Testing
Gray Box Testing
• Gray Box Testing is a software testing technique which is a
combination of Black Box Testing technique and White Box
Testing technique.
• In Black Box Testing technique, tester is unknown to the
internal structure of the item being tested and in White Box
Testing the internal structure is known to tester.
Conclusion
§ software Testing is very importsnt from the point of
software development process and Test data is
important to Test the applications and to write
TestCases.
§ In order to be cost effective, the testing must be
concentrated on areas where it will be most effective.
§ There’s a Risk when we make mistakes nad they
might cause issues if they are triggered when the
software is live
Reference

• www.google.com
• www.wikipedia.com
• www.studymafia.org
Thanks

You might also like