Persona Based Testing
People who involved in software quality assurance are increasingly being challenged to provide a better coverage of the tests. They are often asked to think like the end users, Be in customer’s shoe in order to deliver a high-quality product.
One of the best and interesting way to increase your product quality is to do persona based testing.
What is Persona? What is Persona based testing?
A Persona is a fictional character/user profile created to represent a user type that might use a product/or a service in a similar way.
Persona based testing is a software testing technique that puts software testers in front of customer’s mind and determines use cases/scenarios that customers will execute.
How to create personas?
There are many ways to create personas. The best way to think like the end users/or to be in the customer’s shoe is to get to know with your end users.
Below 03 questions can be asked in order to get to know with end user behavior.
- Customers of the product who use it as intended
- People who are not current customers but for who it is targeted and who will use it as intended
- People who are not current customers but for whom it is NOT targeted and who will NOT use it as intended
Let’s look into this by an example.
There is an application which serves the purpose of employee management. The application can be used to apply leaves/fill out appraisals and many more employee management activities. This application is also accessible to the entire company.
Let’s think of typical users who will use this kind of system.
Now let’s drill down above user types further and add a few characteristics to them.
Management — Management won’t interact with the system often, But they will interact with the system to use specific functionalities. They probably use it in between meetings. Because of this management users are very impatient. They might use the quickest workflow to use complete actions. They use shortcuts, they want fast interactions.
To spice up things, Let’s add a name for our manager character, or else If you are super interested, let’s go for a theme — Superhero theme. I’m going to pick Nick Fury as my manager.
Characteristics of Nick Fury(Manager)
- Won’t’ interact more often
- Impatient users/Need faster responses
- Using quickest workflow to complete action
Let’s look at some possible users for HR. Let’s assume they use the same workflow each time when they interact with the application,
- They may focus on mostly used features
- Complete each and every field possible
- Be patient with slow responses
Seems good candidate for Black Widow(HR)
Likewise, we can go think many possible scenarios/many possible personas from different angles.
For the employee sections, Let’s think of an old user with a lesser knowledge in computers and always has trouble with the system.
That user probably;
- Use the application really slow, takes the time to read each and every information available on the screen.
- Using Internet Explorer 7.0 and no intentions to update it at all.
- Maybe using zoom functionality of the browser to read out sections
Perfect candidate for Flash in Zootopia(Old employee) :)
Like this, you don’t need to maintain any limitations when creating personas. Do not hesitate for someone like this……..
……….If your persona has characters such as;
- Try to enter invalid data to input fields
- Try to get error messages by doing various things
- Going further beyond by entering SQL Injections or trying any methods to break the application.
Once you are done with creating personas, then it’s time to be in end user’s shoe. Now, remember that you are no longer testing you usual test cases/test scenarios. You are executing your test cases/scenarios like Nick Fury the manager, Black Widow the HR, Flash the old employee.
You can arrange your test case/scenario document like this to make things more attractive;
By using this kind of the way, it will not just make the whole testing interesting, it will also help to cover the real user behavior.
[Originally posted in http://chamalperera.com ]