Top 5 Testing Tricks to Help You Uncover Hidden Bugs

Posted in: Bug reports, Quality assurance testing, Usability testing by: Simon Hill on:

As a tester, it’s your job to emulate the end user of the product you are testing. By identifying and describing important defects, you’re making sure that they get a quality product. The reason that developers make such bad testers is that they know exactly how the software is supposed to work. Therefore, they use it as they intended. The trouble is that defects are not always easy to find, and some testers get conditioned into treading well-worn paths by the repetitive nature of the task. Sometimes you have to stray off the beaten track to bag a big bug. Here are the top five testing tricks to help you keep an open mind.

 

Go off script

Don’t follow the same set of instructions in exactly the same way every time you test. Sometimes you have to break the rules and go beyond the scope of your test case. If you spot a potential vulnerability, or you can see a different way that you might try to achieve the same thing, then go for it and see what happens. When everybody sticks to the script and uses the software exactly as intended, defects inevitably slip through. Avoid this by using this testing trick to help you go off script and locate that bug.

 

Work backwards

Try completing your test case in the wrong order. This won’t be possible with all kinds of software but, if you can, then try working backwards through the steps, or skip steps and see what happens if you try to proceed. Can the software handle omissions? Does it remember data that you’ve entered if you skip back and forward?

 

testing tricks

Image source: unknown

Rotate testers

Testing tricks are all about mixing things up, and two heads are better than one. If you assign the same tester to test the same cases over and over on each new build, not only will they become dispirited and lose focus, but they’ll inevitably slip into a pattern. This can lead to missed bugs. Introducing a new tester is one of the best testing tricks out there. They bring a new point of view that can lead to new discoveries. Always rotate testers and mix things up for best results in terms of uncovering bugs.

 

Role play and be difficult

You’re supposed to represent the end user, right? Well, why not get into character? Be a belligerent ten year-old, a frazzled housewife or a grumpy retiree. Run other applications at the same time as testing, switch back and forth between them, take random breaks, click on everything, copy and paste huge chunks of text into text fields and just in general, be difficult. What might you expect if you were new to this software? Leave no “What happens if…?” question unanswered.

 

Look and listen for errors

Make sure that you can hear the software you are testing. Many errors are accompanied by sounds. There might be a ding that could alert you to something going wrong, but no visual cue to go with it. You may also hear the computer spinning up or see spikes in CPU or memory usage if you’re looking and listening for them. You could even dig into exceptions, errors and failures in the log files to find defects that may not have been obvious during your test session.

Sometimes you have to be sneaky and deliberately difficult if you want to find hidden bugs in your software. You don’t want to make too many assumptions about how people use it when it gets released because they can really surprise you. Follow these simple testing tricks to be successful.

ABOUT THE AUTHOR:

Simon Hill

Simon is an experienced freelance technology journalist covering mobile technology, software, and videogames for a wide variety of clients in print and online. He regularly contributes to Digital Trends, Tech Radar, and Android Authority, and he ghostwrites for CEOs in the technology space. After completing a Masters in Scottish History at Edinburgh University, he began his career as a games tester, progressing to lead tester, game designer, and finally producer, before leaving the industry to write full time. He is passionate about the potential for good software and hardware to improve our lives, and strongly believes that thorough testing is a vital prerequisite for greatness.