A Practitioner’s Guide to Software Test Design
by Lee Copeland · Lee Copeland
Copeland's catalogue of test design techniques: equivalence classes, boundary values, decision tables, pairwise combinations, state machines, and use-case tests. After it you can choose a technique deliberately instead of writing test cases by intuition.
This link may earn us a small commission at no extra cost to you. Affiliate disclosure
More resources on Software Testing
ministryoftesting.com
Ministry of Testing is a community hub for software testers, offering articles, courses, events (such as TestBash), podcasts, and an active forum with practical resources to learn and improve testing skills, including game testing.
Martin Fowler - Testing Articles
Fowler's collected writing on testing, including the test pyramid, unit test definitions, mocks versus stubs, and self-testing code. Reading it gives you the vocabulary and trade-off reasoning most team debates about test strategy actually depend on.
Test & Code
Brian Okken's long-running podcast on testing Python code, covering pytest features, test design, CI, and the packaging tools around them. Episodes are short and practical, usually walking through one tool or technique at a time.
AB Testing
Long-running conversation podcast by software quality practitioners Alan Page and Brent Jensen on the Modern Testing principles. Episodes discuss shifting quality ownership to whole teams, agile and lean delivery, DevOps, experimentation and data-driven quality, helping testers and engineering leads rethink the role of testing.
Agile Testing
Crispin and Gregory's account of how testing works on agile teams: the tester's changing role, the agile testing quadrants, and automation strategy. Useful for shifting a team away from a separate downstream QA phase.
The Art of Software Testing
Myers's 1979 classic that framed testing as the process of trying to make software fail rather than confirm it works. Covers test case design, inspections, and the psychology of why developers test their own code badly.