Preventing Boring Test Syndrome in Your Automation
Automating tests has many advantages, the most important being the ability to repeat tests frequently and get results quickly. In agile and DevOps projects, test automation is generally seen as a must-have.
However, it also comes with many challenges, both technical and nontechnical. One risk with automated tests is a lack of inspiration. I like to call this Boring Test Syndrome.
Boring tests are easy to spot. A good rule to determine whether tests are boring is if you start feeling sleepy after a few minutes of looking at them. (This is predicated under the assumption that you know enough to understand the tests.) Though routine tests may still find issues, having to write them will not encourage a tester to be creative in finding unexpected situations to challenge the application.
Here are some ways for a tester to make tests more interesting.
Be a True Tester
First of all, start with a tester mindset. Be a hunter, think out of the box, and try to identify unanticipated weaknesses. Do this in cooperation with others, like fellow team members, to be even more effective.
Exploratory testing can help spice up your testing. In this approach, a tester evaluates an application interactively, without following a previously created step-by-step script. Exploratory testing is often done manually, but the exploratory approach is most of all a way of thinking, and I believe it can also apply to designing automated tests. A test designer can examine and learn the functionality under test, use experience and creativity to design tests that are interesting, and exercise the application in depth for more impact.
Frame Your Tests
To facilitate a creative testing approach, it can help to frame the test design. This has the benefit of providing a solid and maintainable structure for the automated tests. For example, this is done in the action-based testing (ABT) approach by grouping tests in test modules. The tester formulates objectives for each test module, and test cases are designed to match them. The test cases are written as sequences of keyword-driven actions, which are easy to work with for testers and provide optimal maintainability.
Consider Soap Opera Testing
A fun way to combine the exploratory style of working with a focused, scripted approach like ABT can be to make up little stories, in a technique I call soap opera testing. The tester creates stories that are like episodes in an imaginary soap opera on television: based on real life, but condensed and exaggerated. This can make for nice test cases that present unexpected situations to the application under test. To get even more inspiration, seek participation from people who are in the know, like end-users, domain experts, trainers, or product owners.
Tests are an important asset. Automation can make them efficient and easy to repeat, but if the design of the tests is uninspired, they may lack effectiveness in finding unexpected issues. Testers must strive to avoid boredom and get the room to be creative in order to devise tests that are valuable.