The components of a well-written step
Steps are the means of instruction for our testers. The quality of the instructions directly impacts tester behavior. So it's vital to write steps that are clear, concise, and easily understood.
Each step is comprised of an action followed by a question to guide testers through what they should do and what they should confirm. We refer to it as an action/question format:
Action: What should the tester do?
Question: In the form of a Yes / No question.
This format validates each essential action in a workflow, tracking success or failure every step of the way. By providing testers simple instructions, this format facilitates consistent and accurate behavior.
Tests must be focused on a specific process, but individual steps can be as high-level or granular as you wish, depending on what you want to confirm.
What makes a step?
- The Goal: the actions a tester is required to perform (login, checkout, confirm)
- What is required: login credentials, data files, links
- Location: where the performed actions are supposed to be executed (sidebar, separate tab, etc...)
- Background / conditional instructions: (wait time, known behavior, potential occurrences (pop-ups), how to manage those occurrences)
- Ask one question not several - the testers will fail the test if any the answer to any of the questions is "no", which may make it harder to determine what the bug is!
- Relates specifically to action just taken
- Confirms and verifies the successful execution of the action
- YES/NO answer should not leave any room for inference or interpretation