展开知识库目录
AI 写的测试为什么会假通过,怎样检查断言有没有用
AI 很容易写出只执行代码、不检查结果,或断言永远为真的测试。
测试通过前先证明它会失败
AI 很容易写出只执行代码、不检查结果,或断言永远为真的测试。先引入一个小错误,确认测试能失败且失败信息指向预期行为。
只断言状态或非空
常见原因:断言过弱,错误内容仍满足条件。
处理方法:检查关键字段、业务不变量和副作用;用错误值验证断言真的区分。
把涉及的文件、目录、版本、命令和实际输出写进记录;代码变化同时保留 diff 与测试结果。
只有实际现象和证据与这一分支吻合时才执行处理;不吻合就继续检查下一层。
Mock 了被测逻辑本身
常见原因:测试只验证自己配置的返回值。
处理方法:只替代真正外部边界,核心业务使用真实实现和可控输入。
确认“Mock 了被测逻辑本身”已经有可回查结果,再进入“异步任务没有等待”;依据仍然来自猜测时,把缺口单列并停在当前步骤。
只有实际现象和证据与这一分支吻合时才执行处理;不吻合就继续检查下一层。
异步任务没有等待
常见原因:测试在断言前结束,或异常未传播。
处理方法:等待实际完成条件,检查失败分支和未处理 Promise,避免固定 sleep。
确认“异步任务没有等待”已经有可回查结果,再进入“选择器或用例没有执行”;依据仍然来自猜测时,把缺口单列并停在当前步骤。
只有实际现象和证据与这一分支吻合时才执行处理;不吻合就继续检查下一层。
选择器或用例没有执行
常见原因:测试被跳过、筛选错误或浏览器定位到错误元素。
处理方法:检查测试数量、跳过状态和定位唯一性;故意改页面文案确认用例失败。
需要修改时先限定文件和行为范围,无法说明回滚方式或影响面的动作先不执行。 完成后把证据归入“失败注入结果与有效断言清单”。
只有实际现象和证据与这一分支吻合时才执行处理;不吻合就继续检查下一层。
失败注入是测试的最低验收
对每条关键测试记录注入的错误、预期失败和恢复后通过。不能因真实缺陷失败的测试,覆盖率再高也没有保护作用。
