回归套件里 23 条用例红了半年,所有人都默认它们会红,新出现的失败混在里面没人发现。上周真回归了一次,也没人报警。第一次遇到会往复杂处想,其实漏掉的多是个小前提。

pytest -m 'not known_failure'
pytest -m known_failure --tb=no -q

已知失败没有隔离,红绿信号被稀释。没人负责的用例一直留着,整套结果慢慢失去参考价值。这一点先确认清楚,后面就不用反复试。

「回归用例常年失败」相关的验证我通常做两遍,改完一次、隔天再看一次,确认不是临时生效。把这次用到的命令存进笔记,比记住结论有用,换个环境还能照着走。

改完隔一天再看一次,当场正常不代表能稳住。测试环境和线上的差别,往往就在版本号和那几行被忽略的配置上。

具体做法是,把已知失败单独打标签 从主套件摘出去 建待修清单;每条失败指定负责人和截止时间;主套件恢复全绿 并设成合并前的硬门槛;修不好的直接删 留着比删掉更贵。

改完照着核一遍,主套件恢复全绿 待修清单里的条数每周在减少。

作者 9823189