What you’ll learn
- How to cache test results and rerun only failed tests
- How to reduce CI time by 40-60%
- The other ways to optimize CI: streaming, branch mapping, status checks, badges
Quick Reference
| Strategy | Description |
|---|---|
| Rerun Only Failed Tests | Cache results and rerun only failed tests. Reduces CI time by 40-60%. |
| Real-Time Streaming | See results on the dashboard as each test finishes, before the run ends. |
| Branch Environment Mapping | Map branches to environments so trends and failures stay comparable. |
| GitHub Status Checks | Block merges until tests meet your quality gates. |
| Test Health Badges | Show live pass rate and flakiness in your README. |
The Problem
Running full test suites on every commit increases time and cost:- Long feedback loops: full suites take 10-30+ minutes, delaying developer feedback
- High CI costs: CI minutes accumulate quickly across teams and branches
- Slow deployments: waiting for full test runs slows release velocity
- Flaky test noise: re-running everything amplifies flaky test impact and blocks merges
How TestDino Extends Playwright
Playwright@playwright/test@1.50+ includes native --last-failed support. TestDino adds:
- Cross-runner caching: results persist across different CI runners
- Shard awareness: works with parallelized test execution
- Workflow-level persistence: cache survives job restarts
- Branch/commit tracking: results tied to specific code changes
Related
Rerun Failed Tests
Cache results and rerun only what failed in CI
Real-Time Streaming
Watch results land on the dashboard as tests finish
Branch Environment Mapping
Map branches to environments for comparable trends
GitHub Status Checks
Block merges until tests meet quality gates