Introduction to Test Plan Template:

Test Plan Template

*Disclaimer: This Test Plan Template is based upon a unit test level test.


A test plan is a document describing the scope, approach, resources, and schedule of intended test activities. ISQTB, Test Plan

The Test Plan Template documents and tracks the necessary information required to effectively define the approach to be used in the testing of a software project's product.

Here are some top tips to consider when editing this Test Plan Template Checklist: 

  • Ensure the plan is concise. Be strict with your plan: If a section isn’t bringing actionable value to the plan, delete it
  • Be specific. A test plan template is designed to be edited to meet the specific requirements of that particular test. Be precise and detail exactly which feature you are testing (for example)
  • Make sure the test plan is scannable: Avoid long paragraphs and use lists and tables when possible
  • A successful test plan requires a team effort: have the test plan reviewed at least once. And, always remember to send it for approval
  • Always check you are running the most up-to-date plan. Have you ever started editing something only to find you’ve already made the edits in another location? I certainly have and it wastes so much time!

If you are new to Process Street and would like a bit on an introduction to the app: Check out the video below.

Or, for help on using the awesome features to their full capacity visit our help site.


Just to re-cap the disclaimer before we begin, this Test Plan Template only covers unit testing (testing the code to make sure that it works when standing alone).


Let's get started!

Process Street - Demo Video

Preparation:

Preparing for the test is vital for ensuring that a record is kept of exactly who made changes and when they did so.

Record the basic details

First up you need to record the details of this test in order to fully document the process.

Do so by filling in the form fields below.

Assign team members for inclusion in the test

Identify which team members (if any) will be collaborating with you in the testing process. This includes any members that will need to authorize this test at a later stage. 

Use the Assign Members form field below to incorporate team members into this testing process.

Test Plan Template - Determine Scope:

Use this step to state the purpose of the test plan template. This is where you identify the level of the plan this section is essentially the executive summary. 

Identify the scope of the plan

Identify the Scope of the Test Plan Template in relation to the overall software project that it relates to.

Check off the subtasks to ensure you cover all bases when defining the scope of this test. 

Then, in the form field below, summarize the scope of the test.

  • 1
    Resource and budget constraints
  • 2
    The scope of the testing effort
  • 3
    Relation to other evaluation activities
  • 4
    The process to be used for change control
  • 5
    The process to be used for coordination of key activities.

Reference other relevant items

Use this task to include any references to other plans, documents, or items that contain information relevant to this project/process.

Note down the relevance this test has to other items in the form field below.

Test Plan Template - Identify Test Items:

This is where you identify what it is being tested- what you intend to test within the scope of this test plan. In software testing, you will test each code individually, so if you are testing multiple codes you would run this checklist for each piece of code being tested. 

Log in to your code repository

Now you need to log in to your code repository

Whether you use GitHub, Bitbucket, or CloudForge, (or something entirely different) head on over to your repo of choice and log in to your account.

Identify what it is you are testing

Once logged in you will need to find the relevant fork or branch of code to conduct your tests on. This should be well-documented, and so there should be no confusion as to what you are doing.

Record a link to the relevant fork or branch using the form field below.

If you are having trouble finding the relevant code, ensure that you are searching in the correct section of your test environment. Once you've found it, open up the project.

Test Plan Template - Strategy:

Now that you have the correct version of code in front of you, the next step is to identify the area which you will be testing. Much like finding the relevant version of code, this should be fairly obvious, owing to the fact that you should have already know what you are testing.

Identify testing strategy

Test Plan Template

Identify the strategy you intend to use as part of this test.

For example, if you have been assigned the task of unit testing a particular feature, you should have the information to identify where the features codes can be found. Ergo, you can isolate the section of code that has been changed. Use breakpoints to isolate the area and move on.

Use the form field below to identify the testing strategy.

Test Plan Template - Criteria:

What are the completion criteria for this test plan? This is a critical aspect of any test plan, the goal is to identify whether or not a test item (or code) has passed the test process.

Set up the conditions

In order for your unit test to... perform an actual test, you need to set up the conditions or criteria for it to run on.

Unfortunately, we can't give you a set of conditions to abide by, as this will always vary, depending on the test you are running and that specific circumstance.

We can however give you some pointers, use the sub checklist below as a guide to determining your test criteria.

Then, record the conditions you specify using the form field below.

  • 1
    All test cases completed
  • 2
    A specified percentage of cases completed with a percentage containing some number of minor defects
  • 3
    The code coverage tool indicates all code covered
  • 4
    Enter variables to test a basic function

Make sure that you double-check these criteria and conditions, as the unit test will be no good if the test itself is broken or calling on incorrect information.

Test Plan Template - Deliverables & Tasks:

What is to be delivered as part of this plan? 

What is your desired outcome of the test?

The deliverables or milestones are important as they give the test purpose and something to aim for. For each deliverable, you should assign a task... Think:  if this deliverable happens this way then I will run this task.

Ensure that the test verifies your results

Rather than just testing to see if you can visibly get the desired outcome, your unit test needs to verify that your predicted outcome takes place

Once again, the method of implementing this test varies greatly, but in general, just ensure that your unit test specifically confirms that your desired outcome is present. Usually, this will entail the use of a "system.assert()" function.

Below is a sub checklist of the possible deliverables you could use to verify your results. Use it as a guide to choosing your deliverable/s.

Then, use the form field to note down the deliverables for this test.

  • 1
    Test data
  • 2
    Test plan
  • 3
    Test design specifications
  • 4
    Test case specifications
  • 5
    Test procedure specifications
  • 6
    Test item transmittal reports
  • 7
    Test logs
  • 8
    Test Incident Reports
  • 9
    Test Summary reports
  • 10
    Test Incident reports

Assign a task to each deliverable

Assign a task to each deliverable. 

There should be tasks identified for each test deliverable. Include all inter-task dependencies, skill levels, etc. These tasks should also have corresponding tasks and milestones in the overall software project.

To refresh your memory, these are your deliverable/s:

{{form.Record_deliverables}}

Use the form field below to assign a task to each deliverable.

Run the test

So by now, you should have the code under review, the unit test should be written (and double-checked)... meaning that is now time to run your unit test.

This will, once again, depend on the kind of test you are running. So, go ahead and run your test in whichever way suits your specific requirements.

Test Plan Template - Assessment:

Now that you've run your unit test and have the results, you'll need to save and organize them. This may be done automatically, depending on your method of testing, but if so then you should still check for the presence of the save. Depending on your specific requirements you may also need to send these results to a team member or have the results approved - the following tasks cover these bases.

Save your test results

Save and organize your test results here

By saving your results you can then assign them for approval or send them in an email in the following tasks.

Upload a copy of your test results to the form field below.

Pro-tip: If your unit test does not automatically save your results (and you have not already entered a command at the end of the test to rectify this), you'll need to alter your test code to save the results to a file of your choice. After doing this, re-run your test and ensure that your results have been saved.

Assess the code

The final step of the test, before sending it off for approval or review, is to assess your test results. Compare the outputs from the test to what should have happened (the deliverables), and if the new code doesn't make the cut, then so be it.

Record the status of the code using the dropdown field below.

Approval: Assign test for approval

Will be submitted for approval:
  • Save your test results
    Will be submitted
  • Assess the code
    Will be submitted

Send test results

Once your test is approved you can send the results via email to your colleagues. 

Use the email widget below to send the test.

Sources:

Sign up for a FREE account and
search thousands of checklists in our library.

Sign up for a FREE account and search thousands of checklists in our library.