Team Guide to Software Testability
Team Guide to Software Testability
Better software through greater testability
About the Book
Learn practical insights on how testability can help bring teams together to observe, control and understand the systems they build, enabling them to better meet customer needs, and achieve a transparent level of quality and predictability of delivery.
The Team Guide to Software Testability is the third guidebook in the collection from Conflux Books.
The ‘Team Guide’ collection is designed to help teams building and running software systems to be as effective as possible. Guides are curated by experienced practitioners and emphasise the need for collaboration and learning, with the team at the centre.
Manuel Pais is an independent DevOps and Delivery Consultant, focused on teams and flow.
With a diverse experience including development, build management, testing and QA, Manuel has helped large organizations in finance, legal, and manufacturing adopt test automation and continuous delivery, as well as understand DevOps from both technical and human perspectives.
Manuel is co-author of the Team Guide to Software Releasability book and lead editor for the remaining books in the Team Guide series.
Matthew Skelton is co-author of Team Topologies: organizing business and technology teams for fast flow. Recognised by TechBeacon in 2018, 2019, and 2020 as one of the top 100 people to follow in DevOps, Matthew curates the well-known DevOps team topologies patterns at devopstopologies.com. He is Head of Consulting at Conflux and specialises in Continuous Delivery, operability, and organisation dynamics for modern software systems.
- Team Guides for Software
- Conflux Books
- Praise for Software Testability
- Why is testability important?
- What does hard-to-test feel like?
- What does testable feel like?
- What leads to testability being neglected?
- What is covered in this book?
- How to use this book
- Why we wrote this book
- Feedback and suggestions
1. Set a pragmatic direction for improving testability using trade-off sliders
- 1.1 Overcome common challenges to setting a team testability focus
- 1.2 Exercise: do the Team Test for Testability for a quick testability health check
- 1.3 Exercise: use Trade-Off Sliders to guide your testability focus
- 1.4 Summary
2. Create testability targets to improve interactions with dependencies
- 2.1 Recognize needs and contributions from different roles to create an effective testability mindset
- 2.2 Exercise: employ Testability Dependency Targets to improve interactions with dependent teams and systems
- 2.3 Summary
3. Adopt testability mapping to expose hard-to-test architectures
- 3.1 Poor architectural testability causes slow feedback and flawed decisions
- 3.2 Identify the symptoms of poor architectural testability
- 3.3 Exercise: Use testing smells to diagnose poor architectural testability
- 3.4 Exercise: adopt testability mapping to measure testing feedback and waste
- 3.5 Summary
4. Apply the CODS model to increase architectural testability for faster feedback
- 4.1 Explicitly design your architecture for testability
- 4.2 Principles of implementing high testability architectures
- 4.3 Exercise: Use ‘CODS’ to increase architectural testability
- 4.4 Moving from hard-to-test to high architectural testability
- 4.5 Summary
5. Adopt ephemeral development environments for fast feedback
- 5.1 Common challenges with static test environments
- 5.2 Use your development environment for fast feedback
- 5.3 Exercise: Use the Agile Test Quadrants to extend testing in your development environment
- 5.4 Summary
6. Use production data to enhance your testing strategy
- 6.1 Static test strategies cause problems in dynamic production environments
- 6.2 Exercise: employ data from production to keep your test strategy relevant
- 6.3 Use deploy and release patterns for feedback on high risk changes
- 6.4 Summary
7. Use team testing reviews to enable sustainable delivery
- 7.1 Testing debt affects wellbeing and sustainable delivery
- 7.2 Adopt a whole-team approach to minimizing testing debt
- 7.3 Exercise: use the 10 P’s of Testability to track team testing culture
- 7.4 Exercise: adopt incident reviews to target testability improvement actions
- 7.5 Create a board to visualize & prioritize testing debt
- 7.6 Summary
- Chapter 1 - Testability Priorities
- Chapter 2 - Testability and Dependencies
- Chapter 3 - Testability Mapping
- Chapter 4 - Architectural Testability
- Chapter 5 - Ephemeral Development Environments
- Chapter 6 - Use Production to Enhance Test Strategy
- Chapter 7 - Team Testing Reviews for Sustainable Testability
Appendix - Notes on 10 P’s of Testability
- 1 - People
- 2 - Philosophy
- 3 - Product
- 4 - Process
- 5 - Problem
- 6 - Project
- 7 - Pipeline
- 8 - Productivity
- 9 - Production Issues
- 10 - Proactivity
- About the authors
The Leanpub 60-day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
See full terms
80% Royalties. Earn $16 on a $20 book.
We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earnedover $12 million USDwriting, publishing and selling on Leanpub.
Learn more about writing on Leanpub
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.