Test Plan
The test strategy identifies multiple test levels,
which are going to be performed for the project. Activities at each
level must be planned well in advance and it has to be formally
documented. Based on the individual plans only, the individual test
levels are carried out.
Entry means the entry point to that phase. For
example, for unit testing, the coding must be complete and then only
one can start unit testing. Task is the activity that is performed.
Validation is the way in which the progress and correctness and
compliance are verified for that phase. Exit tells the completion
criteria of that phase, after the validation is done. For example, the
exit criterion for unit testing is all unit test cases must pass.
Unit Test Plan {UTP}
The unit test plan is the overall plan to carry out
the unit test activities. The lead tester prepares it and it will be
distributed to the individual testers, which contains the following
sections.
What is to be tested?
The unit test plan must clearly specify the scope of
unit testing. In this, normally the basic input/output of the units
along with their basic functionality will be tested. In this case
mostly the input units will be tested for the format, alignment,
accuracy and the totals. The UTP will clearly give the rules of what
data types are present in the system, their format and their boundary
conditions. This list may not be exhaustive; but it is better to have a
complete list of these details.
Sequence of Testing
The sequences of test activities that are to be
carried out in this phase are to be listed in this section. This
includes, whether to execute positive test cases first or negative test
cases first, to execute test cases based on the priority, to execute
test cases based on test groups etc. Positive test cases prove that the
system performs what is supposed to do; negative test cases prove that
the system does not perform what is not supposed to do. Testing the
screens, files, database etc., are to be given in proper sequence.
Basic Functionality of Units
How the independent functionalities of the units are
tested which excludes any communication between the unit and other
units. The interface part is out of scope of this test level. Apart
from the above sections, the following sections are addressed, very
specific to unit testing.
- Unit Testing Tools
- Priority of Program units
- Naming convention for test cases
- Status reporting mechanism
- Regression test approach
- ETVX criteria
Integration Test Plan
The integration test plan is the overall plan for
carrying out the activities in the integration test level, which
contains the following sections.
What is to be tested?
This section clearly specifies the kinds of
interfaces fall under the scope of testing internal, external
interfaces, with request and response is to be explained. This need not
go deep in terms of technical details but the general approach how the
interfaces are triggered is explained.
Sequence of Integration
When there are multiple modules present in an
application, the sequence in which they are to be integrated will be
specified in this section. In this, the dependencies between the
modules play a vital role. If a unit B has to be executed, it may need
the data that is fed by unit A and unit X. In this case, the units A
and X have to be integrated and then using that data, the unit B has to
be tested. This has to be stated to the whole set of units in the
program. Given this correctly, the testing activities will lead to the
product, slowly building the product, unit by unit and then integrating
them.
System Test Plan {STP}
The system test plan is the overall plan carrying
out the system test level activities. In the system test, apart from
testing the functional aspects of the system, there are some special
testing activities carried out, such as stress testing etc. The
following are the sections normally present in system test plan.
What is to be tested?
This section defines the scope of system testing,
very specific to the project. Normally, the system testing is based on
the requirements. All requirements are to be verified in the scope of
system testing. This covers the functionality of the product. Apart
from this what special testing is performed are also stated here.
Functional Groups and the Sequence
The requirements can be grouped in terms of the
functionality. Based on this, there may be priorities also among the
functional groups. For example, in a banking application, anything
related to customer accounts can be grouped into one area, anything
related to inter-branch transactions may be grouped into one area etc.
Same way for the product being tested, these areas are to be mentioned
here and the suggested sequences of testing of these areas, based on
the priorities are to be described.
Acceptance Test Plan {ATP}
The client at their place performs the acceptance testing. It will be very similar to the system test performed by the http://onestoptesting.com/Introduction/Test-plan.Asp# - Since this is just one level of testing done by the
client for the overall product, it may include test cases including the
unit and integration test level details.
A sample Test Plan Outline along with their description is as shown below:
|