As applications become more distributed—with frontend frameworks, microservices, and third-party APIs all in the mix—there’s increasing pressure to have strong end to end testing in place. But in practice, these tests often become brittle, slow, and hard to maintain. I’ve seen teams invest huge effort into full-stack E2E test suites, only to disable them later because they were constantly failing or blocking deployments.
It makes me wonder: are we trying to make end to end tests do too much?
There’s definitely value in testing flows the way users experience them, but maybe the answer lies in being more intentional about what we test end to end. Instead of testing every edge case through the UI, some teams are moving toward a hybrid approach—using unit and API-level tests for logic, and reserving E2E tests for a few core journeys like login, checkout, or onboarding.
I’ve also come across tools and frameworks that help simulate real environments with lightweight mocks or record-playback models, which reduce the test flakiness while still giving confidence in production-like flows.
Just curious how others are navigating this—especially in teams where frontend, backend, and QA are working in parallel.