A Test Plan is an elaborate document that describes the test approach, purpose, plan, estimation, results, and resources required for testing. It assists us to regulate the effort required to verify the quality of the application under test. The Test Plan acts as a layout to implement Software Testing activities as a defined process that is closely observed and supervised by the Test Manager.
Who Prepares the Test Plan Template?
The Test Lead or Test Manager prepares the Test Plan template. Testers are also involved in the procedure of writing test plan templates. After the test plan is written, the testers will write test scenarios and test cases depending on the test plan document.
Purpose of Test Plan
The key purpose of a Test Plan is to build documentation that defines how the tester will prove that the software works as it should.
- The document should detail what requires to be tested, how it will be tested, and who is in charge of testing.
- It acts as a layout to implement software testing activities as a defined process.
- By putting up a test plan, all team persons can work together and communicate their parts to each other.
How to Prepare Effective Test Plan Template?
The following steps are to be considered for writing a good test plan template:
- Know about the product clearly.
- Create a testing strategy.
- Describe the testing scope.
- Build a Test Environment.
- Identify the types of testing.
- Describe the objectives of testing.
- Estimate major dangers and defects.
- Define roles and responsibilities.
- Calculation and Schedule.
- Set up the Test Deliverables.
Test Plan Template Format
The below Test Plan template should be followed:
(List of names who prepared this)
It is a short synopsis of the software that is being tested, test strategies, procedures, the flow of work, and methods needed for the project. It highlights each and every function at a high level.
1.1. Test Plan Objectives
It describes all the purposes carried out by the Master Test Plan. It lists each and every task made by this test plan. List all the goals that you aim to finish with manual and automation testing. Some goals of testing your project can be:
- Make sure the Application Under Test satisfies functional and non-functional conditions.
- Make sure the AUT lives up to the quality conditions described by the client.
- Bugs or defects are found and fixed prior to going live.
Scope describes the modules, functional or non-functional components of the software that need to be tested. Out Of Scope describes the modules, functional or non-functional components of the software that need not be tested. This section defines what is to be tested, which feature is new to every function of a particular product, its current interfaces, and the interlinking of all functions.
Detail here on how you will finish the items that you have listed in this Scope part.
2.1. Data Entry: It is the process to input details into this test plan.
2.2. Reports File Transfer: The reports in the file transfer section are mentioned here.
2.3. File Transfer: Here files are transferred between two software. A file is moved or copied from one software to another software through a network.
2.4. Security: It describes whether the software is secure or not.
3. Test Strategy
- Define the whole technique for testing. For each and every important class of conditions or feature compounds, name the technique which will make sure that these condition compounds are tested enough.
- Name the important tasks, approaches, and testing tools that are needed to test the designed class of features.
- The techniques must be defined with adequate details to accept the recognition of the key testing keys and the calculation of the time needed to do all.
3.1. System Test
- Write what you know about system testing for the project.
- Name the persons who will be doing system testing on the project. Make a list of all the persons who are responsible for this testing.
- Define how to conduct system testing. Name the people who will write the test scripts for unit testing, what should be the series of events of the system testing, and how should be the testing task.
3.2. Performance Test
- Write your understanding of performance testing for the project.
- Name the people who will conduct performance testing on the project. Make a note of all the persons responsible for this task.
- Define how to conduct performance testing. Name the people who will write the test scripts, what should be the series of events of the performance testing, and how should be the testing task.
3.3. Security Test
- This is a procedure to find defects in the security application of an information system that secures data and manages functionality as required.
- Name the people who will conduct security testing on the project. Make a note of all the persons responsible for this task.
- Define how to conduct security testing. Name the people who will write the test scripts, what should be the series of events of the security testing, and how should be the testing task.
3.4. Automated Test
- This testing is the application of testing tools to automate a manual procedure of verifying and validating software.
- Name the people who will conduct automation testing on the project. Make a note of all the persons responsible for this testing.
3.5. Stress and Volume Test
- Stress testing is a type of performance testing that will happen when you push your app, API, or software to the higher limits of its capacity. Volume testing is a kind of software testing that is done to test a software application with a definite portion of data.
- Define how to conduct stress and volume testing. Name the people who will write the test scripts, what should be the series of events of the stress and volume testing, and how should be the testing task.
3.6. Recovery Test
- It is the task of testing how well software will recover from crashes, hardware collapses, and other same problems. It is the imposed defeat of the software in numerous ways to validate that recovery is correctly happening.
- Name the people who will conduct recovery testing on the project. Make a note of all the persons responsible for this testing.
3.7. Documentation Test
- It is non-functional testing. It is black-box testing that makes sure that documentation, about how to use the software matches with what the software does, giving evidence that software modifications and improvements have been documented.
- Name the people who will do documentation testing on the project. Make a note of all the persons responsible for this task.
3.8. Beta Test
- Beta testing is the last round of testing prior to releasing software to larger customers.
- It is a chance for actual end-users to use the software in a production environment to expose any bugs or defects in a normal release.
3.9. User Acceptance Test
- The aim of the user acceptance test is to check whether the software is ready for operational use or not. During this test, end-users of the software compare the software to its initial conditions.
- Name the people who will conduct user acceptance testing on the project. Make a note of all the persons responsible for this task.
- Define how to conduct user acceptance testing. Name the people who will write the test scripts, what should be the series of events for the user acceptance testing, and how should be the testing task.
4. Environment Requirements
4.1. Data Entry Workstations
It names the minimum hardware essentials that will be used to test the application. The below software are essential as well as client-specific software.
- Windows 8 and above
- Office 2013 and above
- MS Exchange.
It specifies the essentials and desired effects of the test environment. The particular must consist of the physical attributes of the equipment, and also the hardware, the communications, and system software, the usage model, and other software or collections that are essential to perform the test. Define the level of safety that need to be given for the test equipment, system software, and exclusive components such as software, data, and hardware. Validate the testing tools that are needed especially. Calculate the source of every need that is not in your group at present.
5. Test Schedule
Each and every test milestone found in the Software Project Schedule and also every unit transmittal event are included here.
- Describe any extra test milestones that are needed.
- Calculate the time needed to finish every testing task.
- Define the schedule for every testing job and test landmark. For each and every testing facility, describe its duration of use.
6. Control Procedures
A review is a step-by-step inspection of a document by one or more persons with the major goal of identifying and solving defects in the initial stages of the software development life cycle. Reviews are used to validate documents like requirements, system designs, code, test plans, and test cases.
6.2 Bug Review Meetings
A bug review meeting is an official meeting where all the bugs of the existing module are briefed and met. This meeting normally gathers the major stakeholders who represent the various groups involved in agile software development, engineering, quality assurance, support, product owner, and scrum master.
6.3 Change Request
Detail the procedure of changes to the software in a document. Allocate who will work on the modifications and what will be the basis for adding the modifications to the existing software. Suppose, the modifications are affecting the current programs, then these modules must be verified.
6.4 Defect Reporting
Detail the process to be followed when an incident happened during the testing procedure in a document. If you are using a standard form, a blank copy should be attached as an “Appendix” to the Test Plan. Write down the process, if you are using an automated incident logging system in the testing. Defect reporting tools must be provided to testers.
7. Functions To Be Tested
Verify each and every software attribute and combination of the software modules that need to be tested.
8. Resources and Responsibilities
8.1. Resources: The following resources will be used:
- Server: requires a database server that installs MySQL server and a web server that installs Apache server.
- Test tool: Create a testing tool that will auto-generate the test output to the destined form and automated test performance.
- Network: create a network with a LAN gigabit and 1 internet line with a speed of at least 5 Mb/s.
- Computer: At least four computers that will run on Windows 7, Ram 2GB, CPU 3.4GHZ.
Make a note of all the staff members who are in this Test Project and what are their roles. Name the groups for managing, designing, preparing, executing, and resolving the test activities and also relevant issues. Name the persons for providing the test environment. They may include developers, testers, operations staff, and testing services.
Detail tasks of various members of the team like:
- QA Analyst.
- Test Manager.
- Configuration Manager.
The installation team has to be mentioned here.
The tasks are defined as:
- Test Manager: Supervises the complete project, describes project ways and attains correct resources.
- Test: Naming and defining appropriate test techniques or tools or automation framework, validating and evaluating the Test Approach, performing the tests, logging results, and reporting the bugs.
- Developer in Test: Performing the test cases, test program, and test suite.
- Test Administrator: Develop and makes sure test environment and assets are supervised and managed and support testers to use the test environment for execution of the test.
- SQA members: They are in charge of quality assurance, they will make sure the testing process is meeting the specified requirements.
Recognize the major deliverable documents. Detail all the test deliverables during various stages of the testing. The simple deliverables are the test plan, test cases, requirement traceability matrix, defect reports, the strategy of testing, metrics of testing, and user sign-off. Test deliverables are provided below:
Before Testing Phase
- Test plan document
- Test cases document
- Test design specification
During the Testing Phase
- Simulators of testing tools
- Data required for testing
- Traceability Matrix of testing
- Defects logs and performance logs.
After the Testing Cycle is Completed
- Results or reports of testing
- Bug reporting
- Guidelines for installation or test process
- Release documents
10. Suspension / Exit Criteria
These criteria describe the criteria to be used to hold off on a portion of the testing process.
11. Resumption Criteria
These criteria define when testing can restart after it has been on hold.
Here, the requirements of the application are examined prior to the current software, early stages in order to test the correct functionality. Recognize notable limitations on testing, such as test-item availability, testing-resource availability, and deadlines. Also, identify personnel, software, hardware, test data, and database dependencies.
12.1 Personnel Dependencies: Requirements depend on individuals in a testing team.
12.2 Software Dependencies: Requirements depend on software or product here.
12.3 Hardware Dependencies: Here, requirements depend on hardware components here.
12.3 Test Data & Database: The testing here depends on the Data to be tested and the database.
We define the chances of risks and chances to avoid those risks. Recognize major-risk calculations in the test plan. Identify possible plans for each one. (Suppose, if there is a delay in the delivery of test items, then it requires work on nights and weekends to meet the delivery date).
13.1. Schedule: The release date for the project gets passed away when the risks and tasks are not calculated correctly. This will affect the project and can lead to failure of the project and marks on company finance. Schedule risks occur due to the below reasons:
- The delivery time is calculated in an improper way.
- Resources tracing is not done correctly. These resources consist of software, staff, and the abilities of the employee.
- The compound tasks are not calculated correctly. Hence time calculation is not made properly.
13.2. Technical: Because of the shortage of performance and execution of functionalities, technical risks occur. Factors causing technical risks are:
- Continuous enhancements in the software requirements.
- Technology development is not available.
- Compound software process.
- Integration of components is tough.
13.3. Management: Causes of management risks:
- Deficiency in resources
- No proper planning of resources
- No communication within the team.
13.4. Personnel: Causes of personnel risks:
- Failure in addressing priority disputes.
- Failure to solve burdens.
- No correct training of subject.
13.5 Requirements: Causes of requirement risks:
- Requirements that are not clear
- Requirements that are not complete
- Clashing requirements
- Impractical requirements
- Not enough verification
- Assumptions that are not valid
Identify the testing tools that you are going to use in the project. Name the Bug tracking tools also.
Requirements, designs, business conditions, configurations, software changes, test plans, test cases, defects reports, and user manuals, may be documented here.
List the names and titles of all the members who need to accept this plan. Give enough space for the signatures and dates.
Name Signature Date: 1. 2.
A convincing test plan is a very important part of the development project preparation. The test plan document should be clear, short, and modify to changes in the plan or environment. This will make sure each one on your team is striving towards the same aim and that nothing gets missed in the way.
My Personal Notes arrow_drop_up
How do you write a test plan for software testing? ›
- Creating an effective Test Plan involves the following steps:
- Product Analysis.
- Designing Test Strategy.
- Defining Objectives.
- Establish Test Criteria.
- Planning Resource Allocation.
- Planning Setup of Test Environment.
- Determining Test Schedule and Estimation.
- Test Plan identifier.
- Test Items.
- Items to be tested.
- Features excluded for testing.
- Testing Approach.
- Analyze the product or feature you're testing. ...
- Design the test strategies (and approach) you're going to use. ...
- Define the test objectives and pass/fail criteria. ...
- Plan the test environment.
The test plan conveys how the test will be performed. This includes defining test objectives, test approach, test tools, test environment, test schedules and team responsibilities and composition.How long does it take to write a test plan? ›
For example, it takes about two to three days to build and review a simple test plan without test cases. Creating one test case usually takes about 10 minutes. The more test cases your product needs, the more time you should estimate for their development. However, not all projects require full test case coverage.What are the four steps in writing a good test plan? ›
- Understand and analyze the product. ...
- Develop a test strategy. ...
- Define the scope of testing. ...
- Identify testing types. ...
- Define test objectives. ...
- Develop a schedule. ...
- Foresee or document potential issues and risks. ...
- Identify roles & responsibilities.
A QA test plan is a document that outlines the steps required to perform the necessary QA testing. It also lists who in your organization will be responsible for each task, which topics are being tested and when it should be completed.What should not be part of a test plan? ›
Part of test plan: Test plan identifier, Test items, Features to be tested, Features not to be tested, Approach, pass/fail criteria, Testing tasks, Responsibilities, Schedule, Risks and contingencies, Approvals. Therefore, Mission is not part of the test plan.What are the three primary types of test plans? ›
- Level-specific test plans – unit, integration, system, and acceptance test plans.
- Type-specific test plans – functional test plan, performance test plan, usability test plan, automation test plan, etc.
- Master Test Plan – a comprehensive QA Test Plan.
The important points that should be under consideration during test includes Scope of the testing, money, timeline, Risk analysis etc. A Good Test plan ensures less hurdles during execution phase and helps it in making smoother.
What is the difference between test case and test plan? ›
Unlike test plan and test strategy, a test case is far more specific. It's a sequence of steps that helps teams perform a test in the project. This document often includes conditions, environment, expected results, actual results and whether it passed or failed, according to Software Testing Guide.How do you write a basic test plan? ›
- Research and analyze the software. Before you create a test plan, consider studying the software and researching the type of people who are most likely to use it. ...
- Design a test strategy. ...
- Explain the objectives. ...
- Outline test criteria. ...
- Plan a test environment. ...
- Create a schedule. ...
- Identify deliverables.
- Step 1 – Test Case ID. Each test case should be illustrated by a unique ID. ...
- Step 2 – Test Case Description. ...
- Step 3 – Pre-Conditions. ...
- Step 4 – Test Steps. ...
- Step 5 – Test Data. ...
- Step 6 – Expected Result. ...
- Step 7 – Post Condition. ...
- Step 8 – Actual Result.
A test plan must contain data on three things; test coverage, test methods and test responsibilities.How many test cases you write in a day? ›
40) How many test cases can we review per day? It would be around 7 test cases we write so that we can review 7*3=21 test cases. And we can say that 25-30 test case per day.What is the best time of day to write a test? ›
The researchers concluded that students perform better in the morning since they are not tired from attending class and doing school-related tasks, as they tend to be later in the day, Dr. Hans Henrik Sievertsen, an education researcher at the center and the study's lead author, told The Huffington Post in an email.Who write the test plan in software testing? ›
The test plan is a template for conducting software testing activities as a defined process that is fully monitored and controlled by the testing manager. The test plan is prepared by the Test Lead (60%), Test Manager(20%), and by the test engineer(20%).What are the 5 basic principles of testing? ›
- Testing shows the presence of defects, not their absence. ...
- Exhaustive testing is impossible. ...
- Early testing saves time and money. ...
- Defects cluster together. ...
- Beware of the pesticide paradox. ...
- Testing is context dependent. ...
- Absence-of-errors is a fallacy.
The salaries of Software QA Testers in the US range from $44,907 to $129,700 , with a median salary of $85,240 . The middle 50% of Software QA Testers makes between $75,000 and $84,000, with the top 83% making $129,700.How do I create a test plan in Excel? ›
- Choose a layout. ...
- Add test strategy information. ...
- Add fields for test identification. ...
- Add fields for test designer and executor. ...
- Add fields for steps. ...
- Add fields for expected and actual results. ...
- Add fields for test status. ...
- Add fields for preconditions and dependencies.
Does test plan include test cases? ›
A test plan is a comprehensive document that lays out all major activities associated with a particular testing project. Conversely, a test case is only designed to test a particular scenario A testing plan should include: Scope of the project. Goals and objectives.What are the four 4 basic testing methods? ›
There are four main stages of testing that need to be completed before a program can be cleared for use: unit testing, integration testing, system testing, and acceptance testing.What are the 3 main testing strategies used in software testing? ›
The test strategy describes the test level to be performed. There are primarily three levels of testing: unit testing, integration testing, and system testing. In most software development organizations, the developers are responsible for unit testing.What are 3 good test taking strategies? ›
Take a few deep breaths and relax tense muscle - repeat throughout the test. Read directions carefully - ask questions. Answer easier questions first - this will help calm you down.What are the 7 steps of software testing? ›
- Requirement analysis.
- Test planning.
- Test case design and development.
- Test environment setup.
- Test execution.
- Test cycle closure.
A test plan is a detailed document which describes software testing areas and activities. It outlines the test strategy, objectives, test schedule, required resources (human resources, software, and hardware), test estimation and test deliverables. The test plan is a base of every software's testing.How do I write a software plan? ›
- Analysis and Planning. After a client puts in a request for the development of software, the management team sits down to plan. ...
- Define The Goals. ...
- Create a Team. ...
- Resources and Requirements. ...
- Constraints and Risks. ...
- Map the Business Processes. ...
- Budget Estimation. ...
- Create a Timeline.
The important points that should be under consideration during test includes Scope of the testing, money, timeline, Risk analysis etc. A Good Test plan ensures less hurdles during execution phase and helps it in making smoother.What is a test plan in agile? ›
The test plan isn't just a plan; it's a work agreement between QA, product management, and development on what a story means and how it functions. The work agreement describes what the story means and how it's tested between development and QA. It verifies understanding and provides application documentation.