1. AI 生成测试的局限性中边界条件覆盖不足、Mock 过度、断言质量差
AI 生成测试存在哪些局限性,如边界条件覆盖不足、Mock 过度与断言质量差?
- 认识 AI 生成测试的三大局限
- 判断测试质量的方法
- 人工弥补策略
AI 生成测试的典型局限:①边界条件覆盖不足——AI 倾向于生成"常见/正常路径"用例,对空值、极端值、边界、异常路径覆盖少;②Mock 过度——AI 常把所有依赖都 mock 掉,导致测试只验证"模拟行为"而非真实逻辑,甚至掩盖真实集成问题;③断言质量差——AI 生成的断言可能过弱(如只断言不抛异常、断言恒真),导致"假绿"(测试通过但未验证真正行为)。弥补策略:人工补充边界用例、减少不必要的 mock、用变异测试验证断言杀伤力。
三大局限的根因是 AI 缺乏"测试意图"与"被测对象语义"。测试的价值在于"证明行为",而 AI 很容易生成"跑通但不证明"的用例;因此质量把关(边界、mock 合理性、断言有效性)必须人工参与。
// 假绿:断言只验证"不抛异常",未验证逻辑
@Test
void test() {
assertDoesNotThrow(() -> svc.doSomething(null)); // 未验证返回值
}