How to Write a Test Plan
Part 1 of 2:
Preparing the Test Plan
- Know the basics. 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.[1]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[2]
- 29119-2-2013, Software and Systems Engineering - Software Testing - Part 2: Test Processes[3]
- 29119-3-2013, Software and Systems Engineering - Software Testing - Part 3: Test Documentation[4]
- 829-2008, IEEE Standard for Software and System Test Documentation[5]
- 1008-1987 - IEEE Standard for Software Unit Testing[6]
- 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.
Part 2 of 2:
Writing the Test Plan
- 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.[7]
- 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.
- 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.[8][9]
- Determine what the scope of the test is. 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.
- 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.[10]
- 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.
- 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.[11] 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 for concern and extra testing.
- 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 for each test.[12][13]
- 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.
- Write a section on what you will not be testing. List any features that will not be tested during the current project.[14]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
- 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.
- Develop 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 know when it is acceptable to stop testing a certain feature.[15]
- 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 defect is to resume them.
- 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.[16]
- It's a good idea to assign these deliverables to 'owners' who are responsible for their delivery. Assign deadlines by which they are due.
- 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.
5 ★ | 1 Vote
You should read it
May be interested
- Why write neat and organized HTML?you will get many benefits from writing clean and precise html code. here's why it's a good idea to write optimal html code.
- How to test Express.js REST API with Cypresscypress is great for front-end testing, but it can also effectively test apis. cypress allows you to write comprehensive tests that cover the entire work cycle of your web application.
- Execution Plans - Execution plan in MS SQL Serverthe execution plan is created using the query optimizer with the help of statistics, the algebrizer / process tree.
- How to enable / disable Disk Write Caching in Windows 10disk write caching is a feature that improves system performance, using ram memory to collect write commands sent to the data storage device, then cached until the device. slower archives can be written to.
- What is JD? What does JD mean?for employers or job candidates, jd is an important factor for both parties. so what does jd mean?
- Test keyboard online, test key online with the following 5 websiteswhen using the computer you may experience keyboard malfunction, unable to type one or more keys. to determine whether the problem is hardware or software you will have to resort to keyboard test applications.
- IPhone battery checker applicationby using the app to check your iphone's battery for bottle bottlenecks give you an overview of the health of your device's battery and soon have a plan to replace the battery.
- How to implement T-Test in Excelt-test is a way to decide whether there is any statistically significant difference between data sets, using student t distribution.
- What is a stress test?stress testing is the process of determining the ability to maintain a certain level of efficiency in unfavorable conditions of a computer, network, program or device.
- What is fps test? Popular free fps test software todaytop 5 free and popular fps testing software today. this is the savior to help gamers have a smoother, lag-free gaming experience.