Best books for QA Engineers and SDETs
This list follows how testing skill actually grows. It starts with test design and the habits of a good tester (what to test, how to find what scripts miss, how to work inside an agile team). It moves to automation craft: structuring tests in code, testing APIs below the UI, and keeping a suite readable and maintainable. It ends with test strategy and delivery evidence for senior and SDET roles. Tool-specific tutorials are left out on purpose: Playwright, Selenium and Cypress change faster than books do, so learn them from their documentation and use these books for judgement.
The first months in the role
A QA engineer's first months are about finding out where the risk is. Talk to developers and support staff, read the bug history, and notice which features break most often. Those are the places where a test is most valuable, and they are rarely the places with the most tests today.
Learn exploratory testing before you automate anything. Automation locks in what you already know, while exploration finds what you do not. Once you have a clear list of risks, automate the checks that protect them and keep the rest of the suite fast enough that people will run it.
Questions you may be asked
- How do you decide what not to test?
- Tell me about a bug you found through exploration rather than an automated check.
- How would you make a flaky test suite reliable again?
Common mistakes, and what to read
Automating checks for features that change every week. Wait until the behaviour is stable before investing in the test.
See Explore It! on this list.
Testing the implementation rather than the behaviour. Tests that break on every refactor cost more than they save.
See Unit Testing: Principles on this list.
12 books in 3 stages, about 3,500 pages (at least 88 hours of reading). The notes are ours, with no ratings or sales claims.
See the full QA Engineer roadmap →Best courses for QA Engineers and SDETs →
How to choose your books
A short method, so you read the right book for where you are instead of the longest list.
Find your stage
Getting started · 4 books
Test design and tester habits: designing cases systematically, exploring beyond the script and working inside an agile team.
Jump to this stage ↓Doing the job · 5 books
Automation craft: unit and API testing, pytest, patterns that keep test code maintainable, and honest case studies of automation that worked and failed.
Jump to this stage ↓Senior and leading · 3 books
Strategy at scale: how large engineering organisations structure testing, test infrastructure, and the delivery evidence behind quality gates.
Jump to this stage ↓
If you are unsure, start one stage lower than you think. Books in a later stage assume the working knowledge the earlier ones give you.
Begin with one book
Our starting pick
Lessons Learned in Software Testing: A Context-Driven Approach
by Cem Kaner, James Bach, Bret Pettichord · 2001
Short, numbered lessons from working testers on test design, bug reports and dealing with developers. You can use one the same day and it sets good habits before you pick a tool.
See the book ↓Then pick by your situation
Choose the next book by the problem in front of you, not by its place in the list.
If you can follow a test plan and want to find the bugs nobody wrote a case for
read Explore It! (getting started)
If you are moving below the UI to faster, steadier tests
read Testing Web APIs (doing the job)
If you are designing a test framework or keeping a large suite alive
read Experiences of Test Automation (doing the job)
Check it against what QA Engineer postings ask for
These skills come from our analysis of live QA Engineer job postings. If one is new to you, its book list sits one click away.
Each step on the scale reflects how often live job postings name the skill, tool or credential, based on our analysis of those postings.
Set a time budget
| Stage | Books | Pages | Reading | At 3 hrs a week |
|---|---|---|---|---|
| Getting started | 4 | ≥ 1,060 | ≥ 27 hrs | ≥ 9 wks |
| Doing the job | 5 | ≥ 1,240 | ≥ 31 hrs | ≥ 10 wks |
| Senior and leading | 3 | 1,200 | 30 hrs | 10 wks |
| All 3 stages | 12 | ≥ 3,500 | ≥ 88 hrs | ≥ 29 wks |
Treat this as a ceiling, not a target. Read one book at a time, apply it, then move on; read reference-style books in sections. Totals are approximate.
Judge any book before you buy it
Age
This list runs from 1979 (The Art of Software Testing) to 2022 (Testing Web APIs). Older books earn their place by teaching principles that do not change. For tools and platforms, buy the latest edition.
Level
Check the stage before the title. A book from a later stage will make sense only once you have faced the problems it solves.
Format
The longest book here, xUnit Test Patterns, runs about 940 pages. Read very long books as references: pick the chapter that matches the problem you have.
Fit
Ask what you will do differently the week after you finish. If you cannot answer, the book is for a different moment. Come back to it when the situation arrives.
Getting started
Test design and tester habits: designing cases systematically, exploring beyond the script and working inside an agile team.
Start hereLessons Learned in Software Testing: A Context-Driven Approach
by Cem Kaner, James Bach, Bret Pettichord · 2001
~320 pages~8 hrs to read
Short numbered lessons from three working testers on designing tests, finding bugs, writing reports and working with developers. Read it in your first months to pick up a tester's habits and arguments before you have strong ones of your own.
View book →
Agile Testing: A Practical Guide for Testers and Agile Teams
by Lisa Crispin, Janet Gregory · 2009
~580 pages~15 hrs to read
Shows how testers work inside agile teams: what to test at which level, how to plan, and how to collaborate with developers instead of acting as a gate. Useful when you join a team that ships every sprint.
View book →The Art of Software Testing
by Glenford J. Myers, Corey Sandler, Tom Badgett · 1979
A classic on designing test cases systematically: equivalence classes, boundary values, coverage and test planning. Read it to turn trying a few things into repeatable test design.
View book →
Explore It!: Reduce Risk and Increase Confidence with Exploratory Testing
by Elisabeth Hendrickson · 2013
~160 pages~4 hrs to read
A practical guide to exploratory testing: charters, heuristics and ways to find the problems scripts miss. Read it once you can follow a test plan and want to find bugs nobody wrote a case for.
View book →
Doing the job
Automation craft: unit and API testing, pytest, patterns that keep test code maintainable, and honest case studies of automation that worked and failed.
Python Testing with pytest: Simple, Rapid, Effective, and Scalable
by Brian Okken · 2017
Covers writing, organising and parameterising tests with pytest, including fixtures and plugins. Read it when you automate in Python and your tests are growing past a single file.
View book →Experiences of Test Automation: Case Studies of Software Test Automation
by Dorothy Graham, Mark Fewster · 2012
Case studies from teams that built test automation, including what went wrong and why. Useful before you design your first framework, or when keeping the suite alive is taking most of your week.
View book →
Testing Web APIs
by Mark Winteringham · 2022
A hands-on guide to testing APIs: designing checks, structuring automated API tests and fitting them into a pipeline. Read it when you move below the UI to faster, steadier tests.
View book →
Unit Testing: Principles, Practices, and Patterns
by Vladimir Khorikov · 2020
~300 pages~8 hrs to read
Explains what makes a unit test valuable, how to use mocks sparingly and how to structure tests that survive refactoring. Read it when your tests break every time someone changes the code.
View book →
xUnit Test Patterns: Refactoring Test Code
by Gerard Meszaros · 2007
~940 pages~24 hrs to read
A catalog of patterns and smells for test code: fixtures, test doubles and ways to keep tests readable and cheap to maintain. Reach for it when your suite has become hard to change.
View book →
Senior and leading
Strategy at scale: how large engineering organisations structure testing, test infrastructure, and the delivery evidence behind quality gates.

How Google Tests Software
by James Whittaker, Jason Arbon, Jeff Carollo · 2012
~310 pages~8 hrs to read
Describes how a large engineering organisation structures testing roles, test sizes and release readiness. Helps senior engineers think about test strategy beyond a single team.
View book →
Software Engineering at Google: Lessons Learned from Programming Over Time
by Titus Winters, Tom Manshreck, Hyrum Wright · 2020
~600 pages~15 hrs to read
Has chapters on testing at scale, including test sizes, flaky tests and test infrastructure. Useful when you design frameworks and need arguments for how a large codebase stays testable.
View book →
Accelerate: The Science of Lean Software and DevOps
by Nicole Forsgren, Jez Humble, Gene Kim · 2018
~290 pages~7 hrs to read
Reports research linking delivery practices such as continuous integration and test automation to team performance. Gives you evidence when you argue for quality gates and fast feedback.
View book →
Book links go to Amazon and are affiliate links. As an Amazon Associate I earn from qualifying purchases.
Frequently asked questions
Which book should a QA Engineer read first?
Lessons Learned in Software Testing: A Context-Driven Approach by Cem Kaner, James Bach, Bret Pettichord. Short, numbered lessons from working testers on test design, bug reports and dealing with developers. You can use one the same day and it sets good habits before you pick a tool.
Do I need to read all 12 books?
No. The list is a menu, not a syllabus. Find your stage (getting started: 4, doing the job: 5, senior and leading: 3), begin with one book (we suggest Lessons Learned in Software Testing: A Context-Driven Approach), then pick the next book by the problem you are facing at work. Come back to the others when the situation they cover arrives.
How long does it take to read these books?
The 8 books with a known page count add up to about 3,500 pages, roughly 88 hours at 1.5 minutes a page. At three hours a week that is about 29 weeks; at six hours a week, about 15. The list is meant to be read over time, one book at a time, not in one run.
Are these books up to date?
They range from 1979 (The Art of Software Testing) to 2022 (Testing Web APIs). Older titles are included because they teach principles that have not changed; for tools and platforms, we favour recent editions. Check the edition before you buy.
Related reading
Some links are affiliate links: we earn a small commission if you buy, at no cost to you. It does not change what we list.