In this article, we will learn how to write a software test plan template. To do this, we see what is a test plan document. A test plan contains the plan for all the testing activities in order to deliver a high-quality product.
A test plan is a document that contains the procedures for testing. It includes all features of the product to be tested with its input, process, and output data. Thus it defines how the software will be tested and by whom. A software test plan may contain Test Case documents to provide a better understanding of what needs to be done differently in order to test different combinations of inputs and outputs.
The test plan is also shared among Business Analysts, Project Managers, and Development teams to ensure that quality assurance activities are transparent. The Test plan is created by QA managers or leads based on input from other members of the team, and this should not take up too much time.
Test Plans can be either created manually or using the software. For example, the HP test plan generator creates the format and documents needed for planning and tracking testing activities. Normally in large projects when the number of tests to be performed is very high then Test Plan is created using software like HP Quality Center i.e., HP Quality Center is a testing and quality assurance software.
A test plan document is one component of the ‘test deliverables.’ This type of document, just like other test documents, is shared with stakeholders. They are informed about the scope and approach for testing software as well as a schedule that may also be included.
Why and How to Write a Test Plan?
Test plans outline the process of testing the functionality of the software. A test plan details each step that was taken to achieve a certain result and states the objective of each action. The plan also highlights the projected resources, risks, and personnel involved in the test.
You should use a test plan if you are seeking to eliminate bugs and other errors in your software before it becomes available to customers. Follow the steps below to create a test plan.
Know The Basics About Test Plan
What you put in your test plan depends largely on the complexity of the software you’re planning to test. However, there are three basic sections that should always be included in a test plan: Test Coverage, Test Methods, and Test Responsibilities.
- Test coverage defines what you will be testing and what you will not.
- Test methods define how you will be testing each part defined in the “coverage” section.
- Test responsibilities assign tasks and responsibilities to different parties. This section should also include what data each party will record and how it will be stored and reported.
Familiarize yourself with necessary IEEE standards documents
The Institute of Electrical and Electronics Engineers (IEEE) publishes international standards for testing and documenting software and system development. To hold your test plan to the highest standard, consult with the IEEE publications below:
- 29119-1-2013, Software and Systems Engineering – Software Testing – Part 1: Concepts and Definitions
- 29119-2-2013, Software and Systems Engineering – Software Testing – Part 2: Test Processes
- 29119-3-2013, Software and Systems Engineering – Software Testing – Part 3: Test Documentation
- 829-2008, IEEE Standard for Software and System Test Documentation
- 1008-1987 – IEEE Standard for Software Unit Testing
How To Prepare Effective SoftwareTest Plan?
To prepare an effective test plan, one should give the consideration of the below-mentioned points:
- What are the requirements and specifications for producing test deliverables?
- How much time is available to produce this deliverable?
- How many resources will be required to produce the document?
- Will others need to be included in or informed about your planning activities, such as testers or project managers?
- Are there any other deliverables that are related to your test plan?
- What is the best format for your document?
- How will you ensure quality for your test plan document?
- Are interim versions of this document needed during testing or prior to delivery and how often will they be produced?
- Where can you store the final document?
- What happens after testing has been completed and a test deliverable is to be produced?
- How often will you update this plan? Will it change as a result of changes in your environment or project objectives?
- When should components of your plan be prepared, such as quality assurance plans, procedures, and test scripts?
Who Prepare Test Plan Template?
Test Plan Template is a document that is prepared by the QA lead, test manager, or Business Analysts and shared with project managers, developers, etc. in order to ensure that the quality of the product will be satisfactory.
What Is Software Test Plan Template?
A software test plan template is a Word document that contains all instructions and details about how the software will be tested. The template is used as a guideline for all the testing activities in order to deliver high-quality products.
The test plan may cover all types of software testing like Functional, Regression, Smoke (Sanity), Sanity and Performance, etc. It explains what kind of tests are going to be performed on what type of software e.g. Web application, Software for Handheld devices like mobile or tablet, etc.
It includes the list of test cases for each requirement in the requirements document which is verified by testers during the Test Execution phase to ensure that all functionalities are working properly in the product and there is no issue with it. In order to create a software test plan template, one should have a clear idea about the software which is being developed or used to improve the functionality of an existing product.
While creating Software Test Plan Template, it needs to be kept in mind that some points should not exceed and neither should it be less. It needs to be precise and efficient so that all parties are informed about what work needs to be performed during testing and what all functionality can be tested with the available resources.
What Are The Components of Software Test Plan Template?
A test plan template includes necessary steps and information to be followed in order to deliver high-quality software as per the requirements specified in the requirement document and software specification document. It also includes a list of functionalities that need to be verified by testers during testing to ensure that all software functions are working as per requirement specification.
It also includes information about the test environment, available resources, and any other constraints which may affect the quality of the product. It acts as a guideline for all the testing activities in order to deliver high-quality products.
Test Plan Template Components Are:
Test Plan ID: It includes the name of the project as well as the ID for the test plan. A Test Plan ID should be unique throughout the project and it should be remembered by all the parties involved in testing to understand what type of testing is included in this document.
Introduction: It includes basic information about software, project, environment, etc.
References: It includes pointers to the requirement document, software specification document, and other documents related to this project.
Test items: It includes a list of functionalities that need to be tested with their respective conditions, inputs, and expected results. It is used as a guideline for all testing activities in order to deliver high-quality products.
Features to be tested: It includes information about features that are to be tested in this software. It explains what type of testing is included in the document and also it gives a brief idea about why certain features needed to be tested at this stage during the development process.
Feature not to be tested: It includes a list of features that will not be covered in this test plan. This may happen because of certain constraints like a low priority, lack of resources, lack of time, and testing budget.
Approach: It includes information about the general approach which will be followed to perform testing. This may include manual testing approaches like GUI, Unit or Integration test analysis, etc. It may also include an automation approach like functional or regression test automation etc.
Pass/Fail Criteria: It includes information about the criteria that will be used to verify if the product is working as per requirement specifications or not.
Suspension and Resumption Requirements: It includes information about criteria that will be used to suspend the testing process if certain issues are found during testing. It also covers criteria that will be used to resume the testing process if the issues created in any phase are resolved.
Test Deliverables: It includes information about test reports, defects or bug reports,s, etc. which will be used to communicate issues and defects of the product to various parties involved in the project.
Test environment: It includes information about Operating System and other tools used to promote testing.
Estimate: It includes information about the time and cost required to perform testing.
Schedule: It includes information about the time frame in which software will be tested.
Staffing and Training Needs: It includes information about staffing and training needs to be followed in order to perform testing as per requirement specifications.
Responsibilities: It includes information about all the resources who will be responsible for different types of testing in each phase.
Risks: It includes information about risks involved in this testing activity as well as risk mitigation strategies.
Assumptions and Dependencies: It includes information about assumptions made on different environments and dependencies that may affect the quality of the product.
Approvals: It includes information about acceptance criteria set by all the parties involved in this project.
Consult a template
You can find templates for test plans online. The best source for templates is the IEEE library, but access does cost a fee.
- The North Carolina Office of Information Technology Services offers an annotated test plan template, based on IEEE 829 standards, here.
- Dublin City University also offers a free test plan template, based on IEEE 829 standards.
Step 1. Write the Introduction
Your introduction functions as the “executive summary” of the test plan: its goals, its scope, and its schedule. This should be kept brief, as you will go into further detail in subsequent sections of the test plan.
- Your goals and scope statements should define, in general terms, the methods that will be used in the testing process and the projected results. The scope statement should also include the most critical performance measures, as well as a list of what the test plan will not address, and why.
- A schedule details the increments of time in which each phase of the test will be completed.
- Related documents include any peripheral material that is relevant to the current project, such as lists of specifications.
Step 2. Define your objectives
Your test plan should clearly define what you will test and why you will test it. These should always be based on industry standards.
- Determine the scope of the test. What scenarios will be tested?
- Determine what is out of scope for the test. What scenarios will not be tested?
- Common scenarios include Module Testing, Integration Testing, Systems/Acceptance Testing, and Beta Testing.
Step 3. Write a section on required resources
This section describes all of the resources needed to complete the testing, including hardware, software, testing tools, and staff.
- When accounting for your staff, make sure to detail the responsibilities required of each member and the training needed to execute those responsibilities.
- Make sure to document the exact specifications of hardware and software.
Step 4. Write a section on risks and dependencies
Detail all the factors that your project depends on and the risks involved in each step. The level of acceptable risk in your project will help determine what you will and will not test.
- Consider the likelihood of various risks. You will need to prioritize the critical areas.
- Be aware of any vague or unclear requirements. Users often lack the expertise to understand technical language or procedures so user misunderstanding could pose a risk.
- Use your past “bug” history to help you identify areas of concern and extra testing.
Step 5. Write a section on what you are going to test
List what new aspects you will be testing and what old aspects you will be re-testing. Make sure to detail the purpose of each test.
- You can use software application inventories, IEEE guidelines, and other sources to help you determine this list.
- This section also represents your “deliverables,” or what data you will deliver to the client once the testing is complete.
Step 6. Write a section on what you will not be testing
List any features that will not be tested during the current project. Reasons not to test features include:
- The feature will not be included in this version of the software
- The feature is low-risk or has been used before without issue
Step 7. List your strategy
This section outlines the overall test strategy for your test plan. It will specify the rules and processes that will apply to the tests outlined above.
- Include information on tools to be used, what metrics will be collected, and at what level, how many configurations will be tested, and whether there are any special requirements or procedures for testing.
Check Also: What is Web Service? How it is Tested?
Step 8. Develop a pass/fail criteria
These criteria will guide your testing staff so that they know whether testing objectives have been achieved. This section can also include “exit criteria,” so that your staff knows when it is acceptable to stop testing a certain feature.
- You should also include a list of suspension criteria and resumption requirements. This information tells testers when to pause tests and what the acceptable level of the defect is to resume them.
Step 9. Write a list of documents that will be produced during testing
Also known as “deliverables,” these documents are the data, reports, scripts, and results that will be produced by testing.
- It’s a good idea to assign these deliverables to “owners” who are responsible for their delivery. Assign deadlines by which they are due.
Step 10. Write a section on the results of your project
Outline all the goals that you hope to achieve during the testing process. Detail who is in charge of final approvals.