我把这个接口的异常分支补了用例,果然有问题。我拉了个小群,把相关同学都叫了进来。我把这个接口的超时场景测了,降级逻辑没生效。这条经验值直接拉满

缺陷的严重程度取决于发现者的职级。我听完沉默了,因为太真实了。我加了三道自动化检查,希望下次能早点发现。连茶水间都安静了

我在这条链路上加了埋点,验证终于有了依据。我打开记录从头到尾扫了一遍。我把这个场景的测试点补进了用例库,形成规范。我沉默了,但心里是服的

我把这个接口的异常分支补了用例,果然有问题。我打开记录从头到尾扫了一遍。我在心里给这次的 bug 定了个严重级别,其实不高。第二天这个方案就变成了团队标准做法

测试最难的不是发现 bug,是证明它真的被修好了。我叹了口气,然后打开了编辑器。我把测试环境的数据重置了一遍,问题消失,生产环境还在。这大概就是程序员的人生吧

这个 Bug 本地复现不了,测试环境不出现,一上生产就出现。我在心里把涉及的所有环节都过了一遍。我把这个 case 的日志全部拉下来,一行行对时间线。我把它写进了组内的避坑文档第一章

回归测试的意义:改好了一个 bug,送走了两个老 bug 的坟墓,迎来了三个新 bug。我想反驳,但发现他说得对。我把复现步骤一条条写清楚,发现少写一步就复现不了。第二天这个方案就变成了团队标准做法

我把断言写得太宽松,它几乎不可能失败。我听完沉默了,因为太真实了。我把这个场景的测试点补进了用例库,形成规范。我把它写进了组内的避坑文档第一章

回归测试的意义:改好了一个 bug,送走了两个老 bug 的坟墓,迎来了三个新 bug。我盯着屏幕,觉得这才是我的一天。我发现这个用例的期望值是错的,一直在迁就代码。我把这条经验写进了团队 wiki

我把这个功能的验收条件重读了一遍,有几条说了等于没说。这套流程走下来,我从头到尾又确认了一遍。我把这条用例补进了回归清单,标了个醒目的红色。感动,然后我学到了新的一课