Anyone who works in automation will at some point be faced with this dilemma: How do you improve your test cases, and select the right cases to improve the success of an automation effort and maximise your return on investment?
Coverage
One thing you can do is plan your automation suite separately from your regression suite. Prioritise a subset of valuable tests, identify critical paths in the application, and aim to exercise high traffic/volume and high defect workflows.
Look to provide weighted coverage of your system. In the modern development era of unit tests, test-driven development (TDD), extreme programming, code reviews, and modern IDEs and compilers, the value of automating exhaustive large-scale regression packs is diminishing.
Test case quality
Develop your tests so they’re not dependant on domain knowledge for execution. Most importantly, ensure your tests contain clear, well-documented steps with well-defined objective verifications.
Without these simple measures, any attempt at automation will incur significant costs and waste. SMEs will also need to explain each case, or possibly even rewrite them.
Prioritise your tests
Prioritise your cases so individual test value can be clearly identified.
Without prioritisation, any test automation effort can easily become misdirected and focus on the development of cases which are not providing maximum value.
Test case independence
Automation best practice requires tests to execute independently from each other. Build your tests in a way that they can be executed in isolation and independently from other test cases.
The reasoning behind this is to contain the point of failure to a single executable test, and improve the ability of the test automation specialist to debug the test and validate results. It also allows tests to be categorised and executed in any order without having to consider lists of prerequisites.
Categorise your tests
Categorise your tests to allow for additional execution options. This can include smoke tests, quick executing, slow executing, full coverage, and more.
Start automating today
Test automation has become not only beneficial but an essential part of building and releasing quality software, but less than a third of Australian organisations have integrated automation as a key part of their SDLC. As for the reason why, it’s because automation is hard to get right.
If you haven’t yet realised the full potential of test automation, visit our services section to see how we can help you realise the benefits today.