Today, we're sharing our approach to test writing and how you can use it to get better results from your QA tests.
Crafting well-written test cases is critical to getting reliable, fast results from your manual QA tests. But learning to write better QA tests can take a bit of practice. That's why when we onboard new customers, each one gets paired with a customer success manager who gives them a crash course in writing kickass tests.
Whether you use Rainforest or not, the QA test writing strategies that we teach our users provide a solid foundation for writing QA tests that get reliable results.
Clearly written, singularly-focused tests make your testing process run a lot more smoothly. You'll be better able to communicate your expectations to your testers, leading to more deterministic feedback. And your tests can be executed more quickly -- and scale up easily -- because there's no confusion about what needs to be done for any given test case.
Trouble with test writing can also be a good indicator of larger problems with your product or interface. Engineer Max Spankie at ConsumerAffairs discovered that the hyper-focused format of Rainforest test cases serves as its own smoke test for quality:
We realized that if it takes too much effort to write a test that testers will understand, that's a red flag for us about the usability of that feature.As any developer knows, writing good tests forces you to think through exactly how you want something to work. This can have a real impact on the quality of your product, and keeps your team from wasting time chasing down rabbit-holes when what the product really needs is a holistic overhaul.
To achieve the end goal of clear, repeatable test results, test cases in the Rainforest platform are written in a simple action-question format.
Rainforest tests allow you to confirm at-a-glance that key processes work as intended through a simple series of instructions which we call steps. Each step consists of an action and a question about the results of that action. The action must be a simple and complete, and the question should have a "yes" or "no" answer. The format is designed to make QA test results as clear and unambiguous as possible.
One of our customer success managers, Lita, gives the following insight on why writing tests in this format produce great results:
It's best to direct testers through unambiguous steps that can be immediately associated with success or failure by your team. This takes the burden of interpretation off the testers, while providing crystal clear answers about whether your process worked. The great thing about this approach to writing tests is that you complete control the performance of the testers, whether or not they're familiar with the product or feature being tested. By distilling a test case down to the essential actions required to complete a process, and tracking success and failure along the way, the action-question method of test writing helps pinpoint bugs quickly and precisely.
Another important aspect of writing good QA tests is to make sure that the scope of your tests is aligned with the feedback you care about.
Oftentimes when our customers first start writing tests in Rainforest, they try to cram too much into a single test case, or into a single action-question pair.
This is part of the reason why we require questions to be formatted for a "yes" or "no" answer in Rainforest. By constraining the results of each step in the test to a simple "it worked" or "it didn't work,"
Ideally, the scope of a single test case should represent a complete (but simple) user activity. For example, a common test case in Rainforest is to create a new user profile. Another test case might be to log in to an existing account. While testing these two activities in one long test case might seem like it will save time, ultimately each set of actions represents a different activity, and should be separated into two test cases.
In most cases, a well-written test should be easy to execute, even for someone who doesn't have any special knowledge of the product. Rainforest customers have this benefit baked into their manual testing flows, since our network of testers can flag poorly-written tests as confusing. You can get some of this benefit at your organization by having a third-party review your tests for clarity, although this is a much slower, less scalable alternative.
Writing better tests is one of the most significant ways that you can improve your QA results without investing more time, energy and resources into your workflow. Do you have a test-writing strategy that works for you? Tweet @rainforestqa and let us know!
A comprehensive overview of DOM-based automation's limitations, and why UI testing may be superior for most testing use cases.
The landscape of software testing is changing. Speed and quality are no longer seen as opposing forces.
Software development and QA practices are at the heart of the show Westworld. Check out the five lessons real QA teams can learn from the programming team at Delos, Inc.
Rainforest CTO, Russ Smith, discussed testing and troubleshooting mobile application with AWS Device Farm at AWS re:Invent this year.. Watch the full video here.