Steps to reproduce is a piece of information that is needed to reproduce the bug.
Steps to reproduce is a very important piece of information in the bug report. After finding the defect in the software, one must write the precise steps to reproduce the bug. It is important for steps to be stable. Take a very attentive look at the situation: what type of data was inputted? in what exact order? In such cases a video recording helps a lot.
Also one must think about alternative steps which can lead the system to the state mentioned. Think about the specific conditions to reproduce the bug. As it is known, the defects come together in the cluster, so it is important to identify the other places in the system where these issues can occur. For instance, if the specific component is broken ( i.e. the search field), then one can think that this component won’t work in other places of the system.
As a rule, to describe steps, one must use imperative mood, answering the question «What to do?» . It is convenient to use the imperative mood as it doesn’t concern the action and the steps to reproduce must be impersonal. You shouldn’t use personal pronouns or the word user in steps to reproduce.
For example:
Incorrect | Correct |
«You open…», «You click….»,«The user chooses...» | «Open», «Click», «Choose», «Pay attention to» |
It is necessary to be brief and write the precise information what to click without naming the page, pop-up window in each step. Steps to reproduce must be simple but precise. More information about the description of the first step can be found here.
For example:
Incorrect | Correct |
1. Open the main page
2. Click the «Registration» button on the main page |
1. Open the main page
2. Click the «Registration» button |
If the defect was found after inputting some data into the field, the nature of data must be specified. The examples of the data are given to make the steps very precise and to shorten the amount of time to reproduce the bug.
For example:
Incorrect | Correct |
3. Write symbols in the «Name» field | 3. Write the special symbols in the «Name» field (*,@,/,<,>) |
In the last step it is necessary to specify what area should be paid attention to. For example: «Pay attention to...» «Look at the...» , «Take a look at...». It is done in order for the developer to pay attention to the specific direction after reproducing all the steps mentioned above.
For example:
Incorrect | Correct |
6. Pay attention that the logo of the site is not shown after opening the «Twitter» page | 6. Pay attention to the logo of the site |
The amount of words to be written in the bug report varies - it must not be less than 2 but not more than 7-8 steps. The steps must be written in simple sentences with one subject and one predicate. If there’s no opportunity to shorten the sentence, then it should be divided in several steps.
For example:
Incorrect | Correct |
1. Start the game and press «Enter» button twice | 1. Start the game
2. Press «Enter» button two times |
And vice versa, to group several steps into one to shorten the amount of steps, in case that won’t influence the perception of the bug report.
For example:
Incorrect | Correct |
3. Click the «Login» button
4. Enter the valid login in the «Username» field 5. Enter the valid password in the «Password» field 6. Click the «Login» button |
3. Login on the site |
To make steps more precise one must mention not only the name of the element but also its type ( for example, a link, a button, a logo). On the site there can be some other elements with the same names so the specification of the type of the element makes it more clear what element the attention should be paid to. It is done in order for the developer to understand what to click and what to choose on the specific stage without wasting time on searching for the correct element.
For example:
Incorrect | Correct |
Choose «Goods» | Click the «Goods» button |
Steps to reproduce and the whole bug report must be written in the way that the person who will be reading it, has a clear understanding of the essence of the bug. Also it is important to remember that the well written steps to reproduce is the only thing that can help to reproduce the bug if the video or a screenshot are lost.