测试提的 bug 标题叫"偶现",复现步骤写着:多试几次。我先确认了一遍前置条件,再动手。我把这个功能的测试报告整理了出来,附了截图。同事说这波操作可以写进新人培训教材

每天最快乐的时刻:写下最后一个分号,跑完测试,全部通过。我停了一下,然后继续手上的活。我在心里给这个模块的质量打了个分,勉强及格。我沉默了,但心里是服的

我把这个场景的边界值挨个试了一遍,最后一个挂了。我把这个模块的覆盖率跑了出来,只有四成。这条经验值直接拉满

这个模块的覆盖率很高,覆盖的都是简单分支。我愣了两秒,然后继续敲代码。我发现这个 bug 是上个版本修过又回来的。办公室安静得能听见键盘声

这个 Bug 本地复现不了,测试环境不出现,一上生产就出现。我把手上的资料翻出来又读了两遍。我在心里给这次的测试结果总结了一句,风险可控。果然现实比段子更精彩

bug 复现步骤:第一步,把电脑交给测试同学。我想了想自己这些年,好像确实如此。我在心里给这次的 bug 定了个严重级别,其实不高。第二天这个方案就变成了团队标准做法

质量不是测出来的,但漏了会被算在测试头上。我发现自己居然没法反驳。我发现这个用例在 CI 上偶发失败,重跑就好。幸好之前留了备份

这个 bug 我复现了七次,第八次它完美地消失了。我发现自己居然没法反驳。我把这个 case 的日志全部拉下来,一行行对时间线。我把这条经验写进了团队 wiki

这条用例依赖另一个用例的数据,顺序一变就红。我把这个场景的测试步骤写成了可视化的流程图。从此我多了一条团队规约

我把断言写得太宽松,它几乎不可能失败。我把这个模块的测试数据清理脚本加上了,环境干净了。这条经验值直接拉满