End-to-End Testing Strategy for Small Teams

End-to-end tests are valuable but expensive. Here's a strategy for small teams — what to test, how to keep it fast, and when to give up on a flaky test.

Richard GamoraRichard GamoraFullstack developer·4 min read
TestingE2EDevOps

End-to-end tests catch bugs that unit and integration tests miss — but they are slow, flaky, and expensive to maintain. For a small team, the strategy that holds up is being deeply selective about what you cover.

Cover the critical user journeys, not the features

List the three to five user journeys your app cannot ship without: signup, login, the primary action, checkout, billing. Write E2E tests that cover those journeys end-to-end. That is your test suite. Resist the urge to test every feature — most features get adequate coverage from unit and integration tests.

Keep the suite under five minutes

Once an E2E suite passes 10 minutes, developers stop running it locally and rely on CI alone. CI failures then block deploys, but they happen far enough after the change to lose context. Aim for under five minutes. Parallelize tests, share fixtures, and skip browsers you do not actually serve.

Address flakes immediately

A flaky test is worse than no test — it teaches the team to ignore failures. The moment a test flakes, mark it as flaky in the tracker and either fix the root cause within the week or delete it. Tests that intermittently fail accumulate, and the suite loses credibility.

Test against a real backend, in a real browser

Mocked APIs in E2E tests defeat the purpose. Use a real backend pointed at a test database that resets between runs. Yes, it is more setup. The tests catch real bugs. Mocked E2E tests catch synthetic bugs that do not exist.

When to skip E2E entirely

If your team is small, your app changes constantly, and the cost of maintaining the suite is exceeding the bugs it catches, you might be better off without it. A solid integration test suite plus manual smoke testing before releases works fine for many small teams. E2E is a tool, not a virtue.

About the author

Richard Gamora

Richard Gamora

Fullstack developer based in the Philippines, working mostly with Laravel and Vue.js, with eight years of production experience across web and mobile.

me@richardgamora.comUpwork ↗

More on Testing & Tools