The document discusses automating usability testing for mobile apps. It suggests using design guidelines, heuristics, and usability tests together with automation tools like Selenium to effectively test user experiences. Rolf Molich's research found usability problems varied widely between teams, with only a few issues reported by most and many only seen once. The document provides examples of design guidelines and usability heuristics that can be automated, and how to categorize heuristics into personas for testing common problem types. Automation is possible through triangulating these methods.
22. WE ARE HERE TO HELP
facebook.com/seleniummeetup
meetup.com/colombo-selenium
Editor's Notes
Automating usability testing is doable or not?
What it is actually? And why would you think about it? Or automate it?
Many usability test methods; Hallway testing, remote usability testing, expert review, A/B testing or Split testing are the famous approaches for the problem.
You are not the user and you shouldn’t ask direct questions that can be self answered. Best thing is to shut up and listen to the user.
Mr. tappy is one cool way to do usability testing. It records what user is doing and later you can playback to see the where user was struggling.
Mr. tappy is one cool way to do usability testing. It records what user is doing and later you can playback to see the where user was struggling.
Rolf Molich is an expert when it comes to UX. He did some experiments to establish some standards.
Did a usability test of the same solution with 19 different teams and they came up with 300+ usability problems. Out of those 230+ were reported just once. Now there are 3 conclusions based on these findings.
When different teams saying different set of problems how do you know which one to fix?
Its done using real users, most probably to validate new ideas.
Just testing usability is useless.
But, don’t panic!
There are other ways to test usability;
Expert reviews – mostly a scientific approach to check if the ui design adheres to certain pre-defined usability guidelines.
In order to automate usability testing, the automating expert reviews that are based on heuristics and design guidelines is better approach and will add many benefits as well;
Jackob Nielson’s 10 usability heuristics.
UI design guidelines, we also call it a theme.
JustGo Music design guidelines that explains the typography, margins, positions, and layout with color schemes to be used in the app.
With an automation tool that supports little bit of programming to extract UI components in the app, we can do something like; driver.findElement(By.id("xxx")).getCssValue("font-size"); to validate the ui elements against the design guidelines so testers wouldn’t have to do these things manually every test iteration.
With scripting the guidelines to set of tests, now we can ensure that the components, modules, screens, are conformance to standards.
If making these test scripts more generic, we can compose a framework and run it against multiple modules and may be run it against multiple apps.
Jakob Nielsen's 10 general principles for interaction design.
They are called "heuristics" because they are broad rules of thumb and not specific usability guidelines.
Example heuristics can be taken as;
Consistency and standards – Model windows should have similar/same colors, icons, font size etc.
User control and freedom – Ability to navigate around, go back, cancel.
Help users recover from errors – Shouldn’t say a gybrish message. Should say what the user has to do.
Taking iPhone’s iOS 8 as an example;
Consistency and standards – Model windows should have similar/same colors, icons, font size etc.
User control and freedom – Ability to navigate around, go back, cancel.
Help users recover from errors – Shouldn’t say a gybrish message. Should say what the user has to do.
With the design guidelines, and the test scripts, now we can run against these screens. Also, if we identify heuristics per screen we can identify what design guidelines it contains and group those test scripts to categorize and label for those heuristics.
Now the framework also contains;
Generic set of test scripts to check style guidelines.
Set of test scripts to check smallest ui components independently.
Group of test scripts that will test ui components as a whole.
These details shhould be able to extract from the xml files.
Examples; Completion of automation, number of failed tests found, according to the code committed by the developers the usability test coverage weekly are some of the meter readings we can consider to measure.
Also, we should be able to say what screens users frequently visit and the usability test automation coverage and their status.