Continuous Testing
Định nghĩa
Test executed throughout SDLC, automated, providing constant feedback.
Maturity levels
- Ad-hoc — manual, end of cycle.
- Basic automation — some E2E, run weekly.
- CI integrated — tests in PR gate.
- Continuous testing — every commit, full pipeline.
- Continuous quality — production telemetry feedback loop.
Stages of CT
- Commit → static + unit.
- Build → integration test.
- Deploy staging → smoke + functional.
- Pre-prod → performance + security.
- Deploy prod → canary + synthetic.
- Production → RUM + monitoring.
Feedback loops
- Failed test in 5 phút → dev know.
- Bug in prod → root cause in 1h.
- Customer report → test added in 1 day.
Key enabler
- Fast CI (< 30 phút).
- Parallel execution.
- Smart test selection (only run relevant tests).
- Test data automation.
- Environment provisioning < 5 phút.
Tools
- GitHub Actions / GitLab CI — pipeline.
- Selenium Grid / Sauce Labs — parallel exec.
- Test Impact Analysis (Microsoft) — run only affected tests.
- Datadog Synthetics / Catchpoint — prod monitoring.
Anti-pattern
- "Continuous testing" but full E2E suite take 4 hours → not continuous.
- Auto-run test but ignore result.
- Add test slowly → CI bloat over years.
VN context
Tiki, Shopee VN có CT mature. Banking VN catching up (Techcombank, MB Bank).
Org change
- Dev write more test (shift left).
- QE build platform (CT infrastructure).
- SRE pair with QE for shift-right.