Table of Contents
Introduction to Test Plan
A Test Plan is a document detailing the test strategy, objectives, schedule, estimation, results and resources required for software testing. Test Plan helps us determine the effort required to verify the quality of the application under test. It serves as a blueprint of how the testing activity is going to take place in a project, which is closely monitored and controlled by the Test Manager.
Advantage & Disadvantage of Test Plan
Advantages: –
- Serves as a guide throughout the testing process
- It helps in knowing the test coverage, scope, risks, and mitigation steps and deliverables of test plan execution.
- It helps in prioritizing the features and plan the execution sequence.
- It defines various criteria such as entry criteria, exit criteria, suspension criteria and resumption criteria at various stages of testing.
- Test plan addresses various levels of testing such as unit testing, integration testing, System testing, black box testing as well as white box testing.
Disadvantages: –
- A test plan consumes a lot of time and effort.
- due to the fear of avoiding changes the flexibility might reduce.
- Test plan which is predefined follows fixed approach so it prevents testers from accommodating frequent changes in creative way.
- A lot of rework effort is required to incorporate any new changes in the product.
How to write a Test Plan Document ?
In order to create the perfect Test Management Process Test Plan is the most important task. This section provides Steps to Create a Test Plan
- Analyse the product
- Define the scope of testing
- Create test cases
- Develop test strategy
- Define the test objective
- Define text criteria
- Resource planning
- Plan test environment
- Schedule and estimation
- Test deliverables
1.Analyze the Product
Before testing starts, it’s important to analyse everything you can about the software. Ask questions about how it was developed to learn about Who will use the website, what is it used for, how it works, what are software/ hardware the product uses so that it might help you understand its functionality
2. Define the Scope of Testing
Before the start of any test activity, Defining the scope of testing project is very important for all stakeholders. Clear understanding about What will be tested during the process, which modules or functions need to be covered (in scope) and need not be covered (out of scope) in detail. A precise scope helps you give confidence and accurate information of your testing.
3. Create Test Cases
A test case is a document that describes What needs to be tested, how it will be tested, who will do the testing, expected results etc. i.e., the steps taken to carry out your testing
4. Develop Test Strategy
For making a Test Plan in Software Testing, Test Strategy is a critical step because it defines how you plan to implement testing. Which includes testing objectives, testing effort and costs
5. Define the Test Objective
This step defines the objective of testing. Deciding what will be tested when it should be completed, testing own and newly implemented features, how the results will be measured and also finding as many software defects as possible to ensure its bug free before release
6. Define Text Criteria
Test criteria are objectives broken down into smaller parts. They include specific information about how each objective need to be met for the test to be successful. There are 2 types of test criteria: –
- Sustention Criteria – suspension criteria are conditions that would require to meet before testing can stop.
- Exit Criteria – exit criteria are conditions that constitute a successful completion of test phase.
7. Resource Planning
It is a detailed summary of what resources need to be used to complete a project. This includes people, tools, budget and time that required to fulfil it effectively.
8. Plan Test Environment
A testing environment is a setup of software and hardware on which the testing will take place. This also include Sizing requirements for software and servers and Platforms supported by the product.
9. Schedule and Estimation
include a schedule in your test plan that allows you to outline specific testing milestones and deadlines.
10. Test Deliverables
Your testing document should include list of all the documents, tools and other components that has to be developed and maintained in testing process. Document contains deliverables provided before testing, during testing and after testing.
Simple Test Plan Document Template
- INTRODUCTION
- Scope
- Quality Objective
- Roles and Responsibilities
- TEST METHODOLOGY
- Overview
- Test Levels
- Bug Triage
- suspension Criteria and Resumption Criteria
- Test Completeness
- TEST DELIVERABLES
- RESOURCE AND ENVIRONMENT NEEDS
- Testing Tools
- Test Environment
- TERMS/ACRONYMS
Introduction
A brief summary of the test strategies, process, workflow and methodologies used for the project.
1.1 Scope
Identify the scope of this Software Test Plan, what functional or non-functional requirements of the software that will and will not be tested.
1.2 Quality Objective
Mention here, the overall objective that you plan to achive without testing.some of them can be:
- Before going live bugs/issues are identified and fixed
- Ensure the Application Under Test meets the quality specifications defined by the client.
- Ensure the AUT follow functional and non-functional requirements
1.3 Roles and Responsibilities
Describes team members roles and responsibilities. Team members may include
- Developers
- QA Analyst
- Test Manager
- Configuration Manager
- Installation Team
Test Methodology
2.1 Overview
Overview of test methodology for the project. Selecting methodology depends on multiple factors. Methodology may include:
2.2 Test Levels
Test Levels define the Types of Testing to be executed on the Application Under Test (AUT). Testing levels can be:
- Unit testing
- Integration and system testing
- Performance ans stress testing
- User acceptance testing(UAT)
- Bug Triage
The goal of the bug triage is:
-
- To define the each bugs resolution type.
- To prioritize bugs and determine a schedule for all “To Be Fixed Bugs’.
2.3 Suspension Criteria and Resumption Requirements
Suspension criteria define the criteria to be used to suspend either a part of the testing procedure or complete testing procedure while Resumption criteria determine when testing can resume after it has been suspended.
2.4 Test Completeness
It defines the criteria to complete tests. Some criteria can be
- 100% test coverage
- All Manual & Automated Test cases are executed
- All open bugs are fixed or will be fixed in next release
Test Deliverables
Major deliverable documents are:
- Test Plan
- Test Cases
- Requirement Traceability Matrix(RTM)
- Test Results
- Bug Reports
- Test Summary Reports
Resource & Environment Needs
4.1 Testing Tools
- Bug Tracking Tool
- Requirements Tracking Tool
- Automation Tools
4.2 Test Environment
Mentions minimum hardware and software requirements used to test the Application.
The below software is essential as well as client-specific software.
- Windows 8 and above
- Office 2013 and above
- MS Exchange.
Terms/Acronyms
Make a mention of any terms or acronyms used in the project
TERM/ACRONYM | DEFINITION |
API | Application Program Interface |
AUT | Application Under Test |
RTM | Requirement Tracability Matrix |
UAT | User Acceptance Testing |
Example of Test Plan Document
Approvals:
Approved By: | Signature | Date |
Approver name 1 | Signature 1 | Date |
Approver name 2 | Signature 2 | Date |
Document Control:
Name | Name of Document |
Doc. Ref. No. | Unique reference number of document |
Document Status | Draft, For Approval, Issued, Superseded, etc. |
Date of Issue | Date the document was approved for issue |
Change History:
Doc. Version | Author | Date | Description / Change |
Document version identifier | Author name | Date | Summary of content or changes. |
Distribution List:
Name | Role |
Name of company/person | Describe the role |
Conclusion
The main purpose of testing is to deliver a high-quality product to the customer. To ensure the quality of product testers carry over manual as well as automation tests.