“First do it, then do it right, then do it better.“ – Addy Osmani
App testing can be a complicated process, but there are certain guidelines that all QA professionals can and should follow for quality assurance.
We follow many of these basic guidelines (or commandments, if you will) and a few of our own here at PLUS QA—always ensuring that our clients’ apps are of the highest quality before going to market.
Here are 10 of the tenets we live and work by when app testing:
1. Know Your Users.
The foundational task for most businesses is pretty integral to testing well, too: You have to consider who you’re testing for. You can create user personas—a “character sketch” that outlines the demographic and psychographic information of your core user—or talk to actual customers to get a feel for who will be interacting with your app in the end.
2. Know What to Test For.
There’s more than one type of test to run and any given app could need one or more of the following variations: At PLUS QA, we offer usability, functionality, security, accessibility, and automated testing. Each of these individual testing services taken together ensures a quality app experience for users from making sure everything functions properly to ensuring users’ personal information is secure.
3. Train Your Testers.
While regular people can be good beta testers, there’s much to be said for a professionally-trained team. Web and mobile apps become increasingly more complex every day, and QA testers are expected to test both efficiently and with accuracy under tighter and tighter timelines. A well-trained tester will be able to do this better than a beta tester, and save every team time in the long-run.
4. Always Have a Plan.
To test efficiently and effectively, it’s important to always start with a plan. Consider the devices that need to be supported, the platforms that need to be compatible, your test environment, your test strategy and more. You’ll also need to define roles and responsibilities on your team, so everybody knows exactly what they should be doing and when.
5. Treat Your Test Case Like a Story.
When planning your tests, it can be helpful (and more interesting!) to treat test cases like a story: How will the user actually use this product or software? What are they trying to accomplish? What’s standing in their way? Testers should take that same journey and make sure they remove any obstacles standing in users’ way.
6. Test With Empathy.
This is where knowing your users comes in handy. Testing with empathy means thinking about who might be affected by a bug or an app crash—and consider how they would be affected too. Sure, the effects of some bugs may be minimal—but even just annoying users once or twice can be the death knell of your app. Think about your users’ needs too: Accessibility testing is a helpful way to ensure your app works well for everyone.
7. Give Clear, Constructive Feedback.
Other than empathy, leave emotion and your opinion out of testing. By offering neutral feedback, you can help the developer build a better product. Simply give feedback that is clear, constructive, detailed, and to the point—without pointing fingers.
8. Write Tests With Your Team.
Yes, QA leads are experts at writing tests, but they’re not the only ones on your team—and they’re likely not the people who know your app or software best. Product managers and developers know exactly how something should work and exactly how they want users to experience it—so they should know exactly what testers need to be testing for. QA leads should create test cases that reflect contributions from developers and product managers to make sure they’re up-to-date on features and how everything is supposed to work.
9. Don’t Leave Testing for the Last-Minute.
Testing isn’t a throwaway task for the day before launch. It’s an important and imperative part of the development process—and should start early on. The sooner you test, the sooner you find the inevitable things that need to be fixed . . . and the more time you’ll have to fix them (and save on extra costs in the long-run)!
10. Don’t Automate Everything.
As valuable as automated testing has become, you can’t (and shouldn’t) automate everything. When testing user interface and device compatibility, for instance, testing should be done manually. Additionally, doing manual testing first can help you determine what can and should be automated later.
* * *
Of course, there’s no one right way to test for QA. But these are the guidelines that have helped us build a successful quality assurance testing company with reputable clients over the last 10 years. Keep them in mind when testing your next app to ensure the highest quality experience for your users too.