What is a Test Plan?
A test plan is a document encompassing all the activities, scope objectives, the scheduling for different tasks, the teams and the composition of teams, testing environments, technique to be utilised for testing, etc. In short it is a pre planned blueprint of everything that is required to make the testing process complete, successful and executed on time.
Different types of test plans:
Test plans are classified on the basis of testing types, level and the size of the test plan:
- Level specific test plans: These include Unit test plan, Integration test plan and system test plan.
- Type specific test plan: these include plans for major parameters like performance testing plan.
- Master test plan: This is one single big plan combining all the other plans to be carried out on the software product.
What all constitutes a test plan or IEEE 829 test plan structure?
Every test plan consists of a fixed set of parameters, the brief description of whose is given below:
- Test Identifier: A test identifier is nothing but an identifying reference unique to the document.
- Introduction: The introduction is a brief overview of the scope and adjectives of the test to be conducted. It also specifies the constraints related to the testing exercise.
This contains links to documents related to the test plan such as the project report or the test configuration management plan.
- Test items:
Test items are the software entities related to the application under test.
- Features not to be tested:
They are those items which have been excluded from the realm of testing. Under this, reasons for their omission are also mentioned.
- Testing approach:
This raises questions related to selection of strategy for testing. Be it black box/ white box testing. This also includes decisions pertaining to the use of automation or sticking with manual testing.
- Pass/fail criteria:
This is the documentation of those parts of the software product under test which have passed or failed, upon the administration of test cases.
- Suspension and resumption criteria:
It is used for specifying a criteria in the form of limits for a certain percentage of test cases which fail and beyond which the testing has to suspend temporarily until the resolution of all issues.
- Test deliverables:
Includes the tools and documents developed, used and maintained for the testing process. Their types are:
- Deliverables provided before the test the testing phase: documents related to test cases and the test design specifications.
- Deliverables provided during the test phase:
These include the simulators, bug logs, traceability matrices and execution logs.
- Deliverables for post testing phase:
These are the defect reports, test results and the test procedure guideline with release notes.
- Testing tasks: All the tasks related to planning and execution of test cases.
- Environmental needs:
The environment is the platform of software and hardware on which the test cases are carried out. It is also the landscape where the real user or business settings are simulated for testing the software product on different servers, back/front end environment, different operating systems and the like. Requires interaction between developers and testers for setting up of environment.
- Roles and responsibilities:
This aspect is related to assigning responsibilities in the form of project schedules and deadlines to individuals as well as team leaders and managers
- Staffing and training needs:
Related to filling up of recruitment requirements of testing. This is done keeping in mind the skill levels and past experience personals working with particular software functionalities. Also includes skill augmentation through training programmes.
Covers the dates for testing deadlines, product release and other significant milestones in the dateline of product.
- Risk mitigation:
Documents all the risks which can potentially pose hurdles in testing. Also involves preparation of contingency plans for risks.
All the individuals and parties directly and indirectly associated with the testing process give their agreements in the form of signed approvals.