测试判定标准必须由人定义
问题
AI 很适合生成边界用例、故障注入和并发竞争测试,但生成更多测试并不等于提高了验证质量。
如果实现和测试都由同一套假设生成,二者可能稳定地一起出错。
结论
AI 可以生成测试输入和测试代码,但测试判定标准必须由理解系统语义的人定义。
负责人至少需要明确:
- 哪些状态转换是合法的;
- 失败时哪些资源必须保留或释放;
- 重试是否允许,幂等边界在哪里;
- 并发结果可以有哪些等价形式;
- 性能退化达到什么程度才算失败。
分工
| 环节 | 人负责 | AI 负责 |
|---|---|---|
| 契约 | 定义系统语义与不变量 | 检查契约是否完整 |
| 用例 | 审核关键边界 | 扩展组合与异常路径 |
| 实现 | 审核硬件语义和核心算法 | 生成测试代码 |
| 验证 | 定义通过条件 | 执行、收集并整理证据 |
未决
Mutation Testing 可以验证测试是否足够敏感,但仍不能证明判定标准本身正确。下一步需要把关键不变量写成独立于实现的契约,并在双环境中执行。