Testing has diminishing returns. Knowing when to stop is judgement.
Indicators it's time:
1. Test coverage targets met.
- Apex coverage 75%+.
- Test cases for all requirements.
2. Known critical paths verified.
- Smoke tests pass.
- High-risk scenarios passed.
3. Stakeholder sign-off.
- UAT signed off.
- Business stakeholders accept.
4. Defect rate trending down.
- Few new defects in recent runs.
- Most defects are minor.
5. Schedule pressure.
- Release date approaching.
- Cost of further delay > cost of remaining defects.
6. Risk acceptable.
- Remaining risks documented.
- Stakeholders accept residual risk.
Indicators it's NOT time:
- High defect discovery rate continues.
- Unverified critical paths.
- Untested edge cases.
- Stakeholder concerns unaddressed.
- Performance / security concerns.
Decision factors:
- Cost of bug in production vs cost of testing more.
- Available time before release.
- Confidence level in current test results.
Risk-adjusted decision:
- High-risk system (banking, healthcare): test more.
- Low-risk system (internal tool): test less, accept risk.
Common pitfalls:
- Testing forever — perfect is enemy of good.
- Stopping too early — defects in production.
- Stopping under pressure without risk assessment.
Senior QA insight: stopping is a deliberate decision based on risk. Document the decision.
The senior framing: define done before starting; revisit if circumstances change. Without a target, testing never ends.
