Test Scenario Based On User Story

Test Scenario and user story

We can relate to user stories when creating test scenarios. This technique helps to understand how end-user would interact with the tested software application.

User story #1

First Name, Last Name Demographics Location Temperament Psychological type Resources Company Relationships
Doe John Male United States Calm Self-confidence Planning 3 years in the company
33 Years old Helpful Like sport activities Mobile Loyal to the company
10 years in marriage Kind Tech-savvy Excellent knowledge of computer systems
Engineer
Medium Range Salary
Bachelor's Degree

User story #2

First Name, Last Name Demographics Location Temperament Psychological type Resources Company Relationships
Doe John Male United States Resolute Self-confidence Planning 10 years in the company
66 Years old Busy Like sport activities Not-Mobile Loyal to the company
30 years in marriage Kind Basic computer knowledge Excellent knowledge of documents used in the company
Lawyer
High Range Salary
Master's Degree

Let's imagine we have a web application that is used for document storing and sharing to external lawyer companies.

We have two personas who can use this application in their daily work. They have characteristics to understand which type of person they are and how every person can interact with our application. This information can help us create both positive and negative test cases.

Persona 2 is an experienced lawyer who works for the company 10 years. He values time and he is proficient in lawyer documents. Always busy and not very mobile. It means Persona 2 doesn't have much time and used to work at one place in very relible environment

Persona 1 is a technical assistant who recently helped to implement the new software system for storing and sharing documents between other lawyer companies and even government companies. This persona knows technical aspects of the software systems and can setup any environment to start use the application.

Persona 2 needs to start using the implemented software and asked for help Persona 1.

To start using the information above we can assume that there are can be variety and complex steps to write our scenario.
But let's make it simple:

  1. Persona 1 & 2 create accounts (user and admin).
  2. Persona 1 & 2 login into created accounts
  3. Persona 1 uploads necessary documents into the system.
  4. Persona 2 checked if all documents were uploaded and mark the uploading flow is done.
  5. Persona 1 creates "Sharing" task which involves all interested users.
  6. Persona 1 & 2 received notification to their emails that 3rd party company received the documents.
  7. Persona 1 & 2 wait signed documents back into their system.
  8. Both Personas should have the opportunity to check any document in the system and use filter by Name, Date, Category and Status

Now we have a common and absolutely real user story that has some important features: persona who performs actions, actions and necessity of the actions.

Where are our test cases?

Based on the complexity of the system we can implement test cases which can be used as step-by-step guide to avoid misunderstanding of the test scenario flow.
Before test case creation we need to build test scenario. It can be a table where the first column includes the main scenario and others - deviations from the main scenario.

The presented list is not comprehensive and needed to create dependencies of the main functions of the system.

Test scenario flow table

Test case creation

Finally, we moved to the test case creation phase.

I'm not going to create all test cases based on the test scenarios above, so I get and edit some examples from the internet. They are simple and cover our basic needs and functionality.

Mfaisalkhatri's blog - Manual Testing

First, we need to prepare data before start testing.

Data and preconditions to start test case execution

Second, if we have the prototype we will use it to compare our test results:

Sign Up page prototype

In case of mock is not available, we can still relate on our specifications, documentation, functional and business requirements.

Moreover, Sign Up screen flow includes most commonly used fields, buttons and overall functionality so we can imagine basic test cases to check it. There is excel sheets that can be used to check basic functionality based on our test scenario.

Mfaisalkhatri's blog - Test Case Templates

There is a screenshot how it looks like

Test case example from the Mfaisalkhatri's blog
  1. Github - Mfaisalkhatri's blog