跳到主内容

用 AI 写测试用例:完整方法与边界

2026-10-06 发布 来源:我告诉你AI导航 阅读

一个上线三天后才发现的问题:优惠券在金额刚好等于门槛时不能叠加,测试时用的都是明显超过门槛的金额,没人试过相等的那一档。这类漏洞不是测得不认真,是测得太顺着功能的写法走。AI 在这件事上的价值很具体:它不会因为知道业务大概怎么跑,就...

一个上线三天后才发现的问题:优惠券在金额刚好等于门槛时不能叠加,测试时用的都是明显超过门槛的金额,没人试过相等的那一档。这类漏洞不是测得不认真,是测得太顺着功能的写法走。AI 在这件事上的价值很具体:它不会因为知道业务大概怎么跑,就跳过那些不常发生的分支。这篇讲清怎么把它用成一张不漏的网,以及哪些判断它给不了。

用例的价值在覆盖,不在条数

一份两百条用例的文档,如果一百八十条都在测正常下单,覆盖率可能还不如三十条精心设计的。测试的产出不是文档厚度,是有多少种失败方式被提前想到。人写用例的盲区很稳定:顺着主流程写,把异常当边角料,边界值凭感觉取。

模型恰好在这个盲区上有优势——它见过大量「系统在什么情况下出错」的描述,会主动往空值、超长、越权、重复提交这些方向想。这不是它更懂你的业务,是它没有你的路径依赖。

六步,从一段功能说明到可执行清单

把过程拆开,每一步的产出和坑都很具体:

步骤产出物常见坑
交底:功能说明、业务背景、已知限制一份模型能读懂的输入只给一句话需求,模型只能按通用电商或社交逻辑脑补
先要主流程用例一条能跑通的正常路径一上来要全部用例,主流程被异常用例淹没,不好排优先级
单独要边界与异常边界值、空值、越界、超时、权限、并发、字符集七类清单混在一轮里要,模型会挑好写的写,难的漏掉
让它标出容易漏但风险高的一份按风险排序的候选清单不要求标注,它会把所有用例写得一样重要
人工核对假设一份删掉了脑补项的用例集不核对,用例测的是模型想象出来的功能
定优先级、补预期结果、落库可执行、可分级的测试清单只写操作不写预期结果,执行的人无法判断通过与否

第三步是这套流程的核心。分轮要,比一次要全,效果好得多——每轮目标单一,模型不会为了凑数而稀释重点,你核对起来也快。

边界、异常、并发,三类最容易漏的

边界值的取法有规律:等于、刚好小于、刚好大于、空、零、负数、最大值、超长。金额、数量、时间、字符长度、文件大小,每一类数值型字段都该走一遍。这类用例人常常只取正常值和明显异常值,中间那一档最容易被跳过。

异常场景要按依赖去想:网络断了、接口超时、第三方返回错误码、数据库连接失败、权限不足、会话过期。并发则要问三个问题:同时提交两次会怎样、快速连点会怎样、两个用户同时改同一条记录会怎样。字符集这一类常被忽略:表情符号、零宽字符、从右到左的语言、超长文本、前后空格。

把这七类列成清单,每次让模型按清单逐项过,比笼统地说考虑异常情况可靠。这个思路和模型评估指标里的覆盖逻辑一致:先定义要覆盖哪些格子,再看每格有没有填上。

一句「不确定就标注」,能省掉一半返工

模型最大的问题是会替你补设定。功能说明里没写未登录用户能不能领券,它会按常见做法假设不能,然后生成一串基于这个假设的用例。这些用例看着合理,实际测的是一个不存在的规则。

解法是在提示词里写死一条:不要假设功能细节,凡是说明里没定义的行为,单独列出来让我确认。这一条能把脑补从藏在用例里,变成摆在清单上,核对成本降一个量级。同理,要求它给每条用例写预期结果,也能暴露假设——写不出预期结果的用例,通常意味着规则本身没定义清楚。

它列得出用例,排不出优先级

优先级判断,它给不了。模型能穷举可能出错的地方,不能判断哪个错了最要命。支付链路的千分之一和帮助页文案的千分之一,优先级差着几个数量级,而这个判断来自业务——这笔钱谁付、这个功能谁用、出了事谁承担。

三件事它替代不了。其一,业务理解——真正重要的场景往往来自对业务规则的理解,比如结算周期切换那天的特殊处理,模型不知道。其二,探索性测试——靠经验和直觉去乱点、去试探系统边界的那部分,给不了。其三,执行与判定——用例要人跑,结果要人判断这算不算通过。

用例也会过期,维护比生成更花时间

需求改了、接口变了,用例集如果不同步,测出来的通过就是假的。这类失效和数据漂移同构:参照系变了,旧结论就不再成立。定期拿新需求对照旧用例,能较快找出该删该改的部分,这件事让模型先过一遍再人工定,比自己从零翻一遍省力。

还有一层:只测熟悉路径的用例集,会像过拟合一样,在已知场景上表现很好,遇到没见过的组合立刻失效。判断一套用例好不好,不妨看它有多少条是「不看需求文档就想不到的」——这个比例,比总条数更能说明问题。

速查:测试用例的六步清单

  • 先交底:功能说明、业务背景、已知限制
  • 分轮要:主流程一轮,边界与异常单独一轮
  • 按七类清单逐项过,别只说「考虑异常」
  • 提示词里写死:不确定的行为单独列出待确认
  • 每条用例都要有预期结果,优先级和风险判断由人定

反馈页面信息

请描述需要更正的地方,页面标题和网址会自动附上。

也可以发邮件至 [email protected]