Test planning is a very important, essential, and crucial part of the testing life cycle. Well planned and executed tests ensures good quality software. In simple words, Test Planning is a planning of everything involved in testing, and Test Plan is a document where test planning is written.
Planning is a very important and essential survival skill and is an integral part of our life. Plans are made in everyday life knowingly or unknowingly. Say for example, “cooking dinner”.
To cook dinner, the following factors will be considered – available ingredients, what and how to cook, a number of people, the infrastructure required for cooking, skills required to execute the recipe, when to cook, the time required to complete the cooking, and when to stop cooking and serve the food.
Similarly, to conduct “Testing” activity, various parameters are considered.
- Software to test
- What and how to test?
- The infrastructure required for the software to run
- Skills required to execute the test
- When to test?
- To whom and what to report?
- Total efforts required to complete the test
- When to stop testing and release the software?
The output of thorough consideration of all the above factors is nothing but a “Test Plan”. Technically test plan is defined as –
A document describing the testing scope, approach, resources, schedule, deliverable, communication, entry, and exit criteria. It is the basis of formally testing any software/product in a project.
Test plans can be of different levels and types, depending upon the scope of testing.
Master Test Plan – Planning at the organization/product level. This is usually high-level document setting standards for multiple levels.
Phase Test Plan – Test plan for specific feature / interim release/phase. This plan adheres to guidelines set by the master test plan.
Also with the Phase test plan, there can be test plans for specific type of testing as applicable. e.g.
Functional Test Plan – Covers functional testing of a software / phase
Security Test Plan – Covers security testing of a software / phase
Performance Test Plan – Covers performance testing of a software / phase
Test Planning Steps –
You can get a glimpse of test planning as shown below
Test Plan Template
Test plan format and content may vary depending upon the standards followed. Below are the points usually covered in the test plan almost everywhere.
1. Test Plan Identifier: is a unique identifier for the document. Every deliverable has a unique identification number which could be numeric or alphanumeric based on the company configuration management. Test Plan should also adhere to the configuration management policy for a unique ID.
2. Introduction: Brief introduction of the project and objective of the current release. A project could be any software or app and objective could be testing a new mobile App interface or new feature / enhancement in an existing app or defect fixes.
3. Test item: Introduction and overview of Software Under Test (SUT). Detailed information about the SUT.
4. Features to test: In scope features. This could be newly added or updated features. Indirect features that have a technical or functional dependency on newly added or updated features.
5. Features not to test: Out of scope feature. Excluded product features from the current Test Plan. [Note: Provide reasoning for exclusion, like, non-impacted / less impacted / fewer priority features, as applicable.]
6. Approach: Strategy to test the software. Includes types of testing and how to test. Functional testing, Performance Testing, Security Testing using combined [manual + automation], manual only or automation only approach.
7. Test Deliverables: List of all the testing deliverables or artifacts from different phases.
For e.g. : Requirement Traceability Matrix, Test Scenarios, Test Cases, Test Data, Defect Report,
Test Summary Report etc.
Here is the list of Testing Deliverables and it’s free Templates to download.
8. Item pass/fail criteria: Entry and Exit criteria for all items. E.g.
- TestCase: All Steps passed
- Feature: All test cases executed and Priority#1, Priority#2 defects are NOT open.
9. Testing tasks: All tasks/steps to execute for test planning and execution.
10. Environmental needs: Infrastructure required for application and testing.
11. Responsibilities: Roles and responsibilities for various testing / supported activities.
12. Staffing and training needs: Training / hiring needs to test the software and perform the mentioned testing tasks.
13. Schedule: Test estimation (Efforts) and high-level schedule. The schedule should be for key deliverables or important milestones. Ideally, all test deliverables included in the test plan should be scheduled. Detailed test schedule (at feature or defects or resource level) is prepared at an appropriate time during test execution.
14. Risks and Mitigation: Risk identification for applicable items, assumptions, and mitigation plan.
15. Approvals: Approvals and signs of dates.
A test plan is a guideline based on which test execution should be tracked. For successful testing and good product test delivery, it is important to update and make required changes in the plan as per changes in any of the parameters which were the basis of the test plan.
You can find the sample for test plan using below download button-