The test process is the backbone of testing. It is not there to turn testers into form-filling machines. It lets the team know what testing is based on, how far coverage has reached, which risks remain and when the plan needs to change.

The test process sits inside the SDLC, but its activities do not stand in a one-way queue. Analysis can reveal a missing requirement and send planning back for a change; execution can find a new risk and send the team back to design more cases. Monitoring and control run throughout rather than waiting for their turn.

The concept

The test process is a set of activities for test planning, monitoring, analysis, design, implementation, execution and completion. Depending on the project, one person may do several activities or the team may share them.

The concrete activities are:

ActivityMain question
Test PlanningWhat do we test, how, with which people and how much time?
Test Monitoring & ControlWhere is reality departing from the plan and what needs adjusting?
Test AnalysisWhich test conditions and risks need checking?
Test DesignWhich test cases, data and coverage items do we need?
Test ImplementationHow do we organise test procedures, suites, scripts, data and environments?
Test ExecutionWhat is the actual result, are there failures and what information should we log?
Test CompletionWhich results, work products and lessons need to be summarised or handed over?

The names sound like seven railway stations, but in reality they overlap and repeat. The test process is not private tester business either: developers, BAs, Product Owners and operations people all create input for it or use its output.

Typical question: What is the test process?

Typical question: What are the steps in the test process?

The test process in a sprint

If you have forgotten what an Agile Scrum sprint looks like, go back to Agile and Waterfall. I will recap a little and fold the test process into it.

Planning phase

Sprint Planning decides the amount of work and the time available—the sprint plan. The test plan is created alongside the Project Plan, or at least within the planning phase.

The Test Plan takes input from the Project Plan, Requirements and Acceptance Criteria. Its structure is covered in Test Plan.

Daily Scrum

After planning, work begins. Daily Scrums take place while Test Monitoring and Control continues through to Test Execution.

Test Monitoring and Control

This is a real activity, but its life cycle does not follow the same sequence as the others. It is a continuing activity from after Test Planning until the test process ends.

Inputs:

Outputs:

Test Analysis

This is where testers officially begin studying requirements and asking questions to clarify them, as described in Clarifying a requirement.

Test Analysis can start very early, as soon as there is enough test basis to read. Test Monitoring and Control runs alongside it to watch progress and adjust. It is not a gate that gives a tester permission to finish clarifying requirements.

Inputs:

Output:

Test Condition: simply, a list of things in the product that can be tested. On a login screen these include the username field, password field, CAPTCHA and Login button. Test conditions cover three aspects of each item: UI (display), State (state) and Function (function).

Test Design

This is the stage where testers design tests. Specifically, we design test cases, group them into test suites and may group test cases into test scenarios from the actor's point of view.

Here, design means creating a broad test case without the exact execution details: a general action and its result. This is a High Level Test Case, for example:

User successfully logs in using the correct username and password combination

The article High-Level Test Cases and RTM explains the writing style. During high-level test-case design, apply test design techniques; see Test Design Techniques.

Inputs:

Output:

Test Implementation

This step creates low-level test cases by taking the high-level case and adding concrete details: how to execute it, where to execute it, with what, and so on.

A low-level test case follows a template so people on the test team can read and understand one another's cases. For writing one, see Writing Your First Test Case.

Inputs:

Output:

Test Execution

This is simply the step where test cases are executed. Log bugs and send them to development, work with developers to retest them and make sure they are fixed. Test Execution continues until all test cases have run or testing time runs out—if that is what the plan says.

To make sure test cases are correct before execution, they must go through review.

Inputs:

Outputs:

Test Completion

At the final stage, testers usually prepare reports for the lead:

Test Completion cares about the Test Summary Report. Task reports happen during testing and resemble a Daily Scrum, but are internal to the test team.

Input:

Outputs:

Review phase

The Review phase is basically the Demo. The tester's work is mostly done; leads and BAs work with the customer to demonstrate the product. If the customer is unhappy with its current state, the work moves to the next sprint.

In short, a tester's participation in a sprint looks like this:

Typical question: What are the outputs of each step in the test process?

Typical question: How does a tester participate in a sprint?

References