Test Scenario – what is that?
During every software implementation there is a moment, when we are asked to prepare test scenarios. They are nothing more than simulations of real system use that should capture possible configuration errors. It sounds trivial, but preparing good test scenarios is first of all very creative task (as we want to simulate what in future real user will do in the live system) and second of all very time-consuming.
Where to start?
We always recommend to start with very high-level scenarios. Write them down in an Excel spreadsheet. The list will grow with time and at some point in time you will see it’s been enough. From then on you drill down and make those tests more specific, splitting them into sub-scenarios. Remember that testing should check representative part of the system (yes, it is about statistics) so there is no possibility to test all situations/functionalities. We should be choosing those most probable and with highest impact (if not tested).
What test scenario includes?
Imagine that you want to buy a brand new car. This desicion definitely needs some testing. We start preparing in our notebook some important for us parameters: engine size, fuel consumption, acceleration, trunk size, and of course color :). These information can be easily checked while browsing producer’s web site. But much better would be test the car while driving and check personally what matters to us most. So let’s put together first test scenario. Scenarios divide themselves into steps:
Step 1: Enter the car. Test door opening/closing.
We have first step. Now let’s think about success factors. What does it take to say that this test has passed?
Positive test is when: door open easily, close without any noise, door-handle is on right height and is easy to grasp. If all of that did not work then we can consider test as failed. Additionally we can define responsible tester. Is it going to be future driver, passenger or maybe kids using back seats. How much time should we dedicate to this test? (it will help us with some planning, ie. when setup our visit with car dealer or how to plan the day in a most effective manner…) Is this step a prerequisite to proceed to a new step? In other words if the step above does not pass, shall we continue and test other functionalities?
In a similar manner we construct test scenarios for software. Functionalities are drilled down and divided into smaller pieces. We should try to cover as many pieces as possible. As you can imagine preparing thought-through test scenarios takes significant amount of time during the project chase and unfortunately it’s very common to underestimate the effort related to this task.You can always use best-practices and already proven templates. For that engage with specialists that have international ISTQB certificate and similar experiences.