Software Testing
Software Testing
WHEN TO START
Its ok to test the software as early stage as possible.Each phase of
software making involves testing
When to Stop Testing?
It is difficult to determine when to stop testing, as testing is a
never-ending process and no one can claim that a software is
100% tested. The following aspects are to be considered for
stopping the testing process:
Testing Deadlines
Completion of test case execution
Completion of functional and code coverage to a certain point
Bug rate falls below a certain level and no high-priority bugs are
identified
Management decision
Testing is done in different forms at every phase of SDLC:
Software Testing – Overview Software Testing 2 During the
requirement gathering phase, the analysis and verification of
requirements are also considered as testing. Reviewing the design
in the design phase with the intent to improve the design is also
considered as testing. Testing performed by a developer on
completion of the code is also categorized as testing
• During the requirement gathering phase, the
analysis and verification of requirements are also considered
as testing.
• Reviewing the design in the design phase with the
intent to improve the design is also considered as testing.
• Testing performed by a developer on completion of
the code is also categorized as testing.
When to Stop Testing?
It is difficult to determine when to stop testing, as testing is a
never-ending process and no one can claim that a software is
100% tested. The following aspects are to be considered for
stopping the testing process −
• Testing Deadlines
• Completion of test case execution
• Completion of functional and code coverage to a
certain point
• Bug rate falls below a certain level and no high-
priority bugs are identified
• Management decision
Verification
Validation
.Done by developers
.Done by testers
An effective testing practice will see the above steps applied to the
testing policies of every organization and hence it will make sure
that the organization maintains the strictest of standards when it
comes to software quality.
Unit Testing
This type of testing is performed by developers before the setup is
handed over to the testing team to formally execute the test cases.
Unit testing is performed by the respective developers on the
individual units of source code assigned areas. The developers use
test data that is different from the test data of the quality assurance
team.
The goal of unit testing is to isolate each part of the program and
show that individual parts are correct in terms of requirements and
functionality.
Limitations of Unit Testing
Testing cannot catch each and every bug in an application. It is
impossible to evaluate every execution path in every software
application. The same is the case with unit testing.
There is a limit to the number of scenarios and test data that a
developer can use to verify a source code. After having exhausted
all the options, there is no choice but to stop unit testing and
merge the code segment with other units.
Integration Testing
Integration testing is defined as the testing of combined parts
of an application to determine if they function correctly.
Integration testing can be done in two ways: Bottom-up
integration testing and Top-down integration testing.
.Sr.No
Integration Testing Method
1
Bottom-up integration
This testing begins with unit testing, followed by tests of
progressively higher-level combinations of units called modules or
.builds
2
Top-down integration
In this testing, the highest-level modules are tested first and
.progressively, lower-level modules are tested thereafter