The Testing Pyramid Is Dead: Long Live the Diamond?
The testing pyramid is dead. For nearly two decades we treated it as the sacred cow of software quality, but the world it was built for is gone. If you are a QA engineer or an engineering lead watching your team burn half its time fixing flaky, brittle tests, this is for you, because fixing tests is not testing. The pyramid was designed for monolithic apps and slow manual releases, and modern distributed systems broke its assumptions. The video above makes the full case, and below is the written version of why the pyramid is dead and what integration-first models like the trophy and the honeycomb replace it with.
The isolation paradox
A unit-heavy suite passes constantly while the system still fails, because mocking tests your assumptions, not your software.
When Mike Cohn introduced the pyramid in 2009, unit tests were fast and UI tests were slow and unreliable, so the goal was high coverage at low cost. In optimizing for cost, we quietly traded away real system confidence. We write thousands of unit tests that pass 100 percent of the time, and the system still crashes in production.
I get into this in the video. When you mock your database, your API, and your auth service, you are not testing the software. You are testing your assumptions about it. The complexity is no longer inside individual functions. It has moved into the interactions between dozens of distributed services.
The complexity moved to the seams
In a microservices world the catastrophic failures happen at the seams, which the pyramid’s tiny tip barely covers.
I found that the real risk in modern architecture is not a single function returning the wrong value. It is the cart service failing to talk to the inventory service correctly. Those seams are where outages come from, and the pyramid puts almost no weight there.
Maintaining a massive unit base also slows refactoring. It becomes a tax on development speed rather than a safety net. What I learned is that a suite of ten thousand green unit tests can coexist with weekly production incidents, because it is testing the wrong layer.
The speed advantage evaporated
Modern tools erased the slowness and flakiness that justified the unit-heavy base.
The original reasons for the pyramid, slow and flaky higher-level tests, have been solved. Playwright runs hundreds of end-to-end tests in parallel and finishes a full suite in under ten minutes. Testcontainers spins up a real PostgreSQL or Kafka instance in seconds, so you no longer need mocks that hide the real bugs.
I make this point in the video. When the cost of running a real test is nearly the same as a mock, you choose fidelity every time. The return on a single well-placed end-to-end test now beats a unit test, because it validates the entire user journey instead of one isolated assumption.
The trophy, the honeycomb, and shifting right
Integration-first models plus production observability replace the pyramid’s coverage obsession.
This is why teams are moving to the testing trophy and the honeycomb, a model Spotify popularized for microservices. Both nearly eliminate class-level unit tests and put the weight on service and integration tests, where the highest confidence-to-effort ratio lives. Contract tools like Pact keep providers and consumers in sync before code reaches staging.
Then you shift right. Instead of stopping at deployment, you use observability, canary releases, and feature flags to test in production against real user data. You stop measuring percent coverage and start measuring mean time to detect and mean time to recover. In a non-deterministic world, resilience matters more than perfection.
Agentic QA is the final nail
AI agents that self-heal tests and explore applications autonomously end the brittleness the pyramid was built around.
Generative AI changed the math of test generation and maintenance for good. Modern tools recognize when a selector changes and update the script automatically, which kills the flakiness that once plagued end-to-end automation. We are moving toward agents that crawl an app and find edge cases a predefined script or a pyramid could never reach.
The role changes with it. The manual tester becomes a quality architect who designs the systems that enable continuous automated quality. Quality stops being a gate at the end of a sprint and becomes an engineering discipline built in from the first line of code.
The takeaway
The pyramid served its purpose, but its constraints no longer hold. Unit-heavy suites test assumptions while real failures hide at the seams, modern tools erased the speed argument, and integration-first models like the trophy and honeycomb put confidence where systems actually break. Add shift-right observability and agentic, self-healing tests, and you close the gap between deployment velocity and testing speed. Do not let a fifteen-year-old geometric shape dictate your strategy. Draw your own shape based on your risk.
Watch the full argument in my video on why the testing pyramid is dead, and I cover the honeycomb and real-world case studies in the video. I also break down the shift-right observability piece in the video. Here is my question for the comments: has your team killed the pyramid yet, or are you still defending it? Subscribe to join the QA Revolution.