[More] Reliable and Trustworthy Automated GUI Tests
One of the perennial problems with automated tests is the amount of work many need to keep them working as the underlying application changes. This is particularly true of poorly designed and/or poorly implemented automated tests which can be brittle and prone to break when virtually anything changes in the system under test, the test conditions, or the environment.
This session will help you learn or refresh your understanding of how automated GUI tests work, and then identify and discover various approaches to improving the quality of these tests, their interface(s) with the system being tested, and how to design and implement alternatives to existing 'flaky' tests. The concepts apply to both web and mobile app testing.
The session will be based on my experiences of working with people who write and maintain automated tests, and on my own attempts to write trustworthy tests.
Outline/Structure of the Talk
- Concept: Loosely coupled tests
- Concept: How the tests interact with what they're testing - de facto and official interfaces
- Experience: Examples of various existing automated tests, which will be decomposed into what they test and how they try to do so
- Concept: What the tests don't test
- Design: Ways to improve the test automation interfaces
- Design: Considering alternative test automation interfaces
- Discussions (as time allows - much longer if we decide to run this as a workshop)
Participants will leave with a greater understanding of how to write more trustworthy automated tests, including ways to improve and augment the software that is being tested.