The document discusses principles for writing maintainable tests such as the single responsibility principle (SRP), open/close principle, and others. It provides examples of applying these principles when testing an Active Admin app using page objects and discusses how breaking page objects into smaller page objects can still violate SRP. The document advocates using the right abstractions by grouping tests by intent rather than by page and provides examples using the Gauge testing framework. It also discusses test pyramids and how the layer tests are written is important for confidence in tests.
6. Everything in its right place?
Breaking Page objects to
smaller page objects still
violates SRP
This is generally a huge class.
Has many reasons to change -
Violating SRP.
Yes, It DRY important. But, are
we using the right abstraction!
7. Use the right abstractions!
Group by intent not page(s)
12. Less is better
Not using page objects in our tests reduced source code by 40%.
Links
- The blog
- 2 test suites with the same set of test cases with and without Page
Objects for the Active admin store web application.
14. Is it just the numbers that matter?
- finding the root cause of a failure
- setting-up, replicating and
validating an issue
- Wondering why the Return on
Investment (ROI) tests are low
The first thing to consider is if ests in
your projects are written in the right
layer(s).
15. With few UI automation tests and fewer manual tests
Confidence in tests
The benefit is when a
bug is fixed and not
when a bug is found -
by Mike Wacker
16. Know your tests Where does it belong?
User flow tests should fail only when the
user cannot complete the flow.
Subcutaneous tests