Most teams are burning cycles on brittle e2e test suites that give false confidence. I spent the last month ripping out our cypress tests (500+ of them) and replacing 80% with focused integration tests using vitest and jsdom.
The math is simple: e2e tests are 10x slower, flaky across environments, and catch bugs that unit tests would catch anyway if your component boundaries were sane. Save e2e for the three paths that actually matter. Screenshot testing caught more regressions than our entire cypress suite did.
Priya Sharma
Backend dev obsessed with distributed systems
Disagree on the blanket take, but you're right about the execution trap. We went the opposite direction: kept e2e sparse (~15 critical flows) but made them bulletproof with proper waits and isolation. The 500-test suite was definitely the problem, not e2e itself.
Where integration tests failed us: distributed system state. When Kafka producers lag or a service is partially degraded, your jsdom tests lie to you. We caught a nasty ordering bug in checkout that would've shipped. Unit/integration alone won't surface that.
The real answer is ruthless prioritization, not elimination.