What Happens When Testing Goes Wrong?
核心论点
Testing 是 information-gathering and learning process。它帮助团队在发布前获得反馈并作出风险决策;测试失败不仅意味着漏掉 bug,也意味着反馈系统没有提供足够、及时或可信的信息。
五类后果
- Loss of reputation:崩溃、404、可用性或无障碍问题会迅速破坏信任。
- Unpleasant surprises:照搬通用测试策略、忽视用户 persona、浅层测试或糟糕的 defect reporting 会留下盲点。
- Loss of revenue:缺失 unit/regression tests 使 technical debt 累积,生产修复昂贵且风险更高。
- Slow or no feedback loop:测试与项目情境不匹配,会让产品计划与真实市场需求逐渐分离。
- Lawsuits / penalties:accessibility、security、privacy、data loss 与 downtime 都可能演化为法律和监管问题。
文章中的成本数字
文章引用 2020 年 CISQ 报告,将美国 poor software quality 成本估为 US$2.08 trillion。这与另一篇材料的 2022 年 US$2.4 trillion 属于不同年份的估算,引用时不可混写。
Context-driven testing
没有通用测试策略可直接复制到所有项目。测试计划至少要考虑:
- product / project / quality context;
- 用户画像、关键任务与真实运行环境;
- 高影响 failure modes 与边界条件;
- 法律、隐私、安全与无障碍义务;
- 反馈速度、缺陷可复现性和决策负责人。
IE Project 应用
- 写出 3 个“即使功能看似正常仍可能失败”的真实情境。
- 为每个情境标注受影响 stakeholder、severity 与 exposure likelihood。
- 设计 1 个能在开发早期发现问题的测试。
- 设计 1 个生产监控指标,捕获测试遗漏。
- 用清晰 steps、expected/actual result、环境和证据写一份 defect report。