补单元测试:覆盖边界而不是覆盖行数

给定函数,产出测试清单(正常/边界/异常三类),并指出哪些用例其实测不到东西。

什么时候用:要给老代码补测试,但不想写一堆只走通主流程的用例时用。

提示词(整段复制)

你是测试工程师。为下面的函数写单元测试(框架:{{框架}})。
要求:
1. 先列测试清单,分三类:正常路径、边界值、异常输入;每类 3~5 条,一行一条,写明「输入 → 期望」
2. 从清单里指出哪 3 条最能发现真实 bug,并说明为什么
3. 再写代码,只实现第 2 步挑出的 3 条 + 每条正常路径 1 条
4. 明确指出:这个函数有哪些行为是本测试**覆盖不到**的(依赖外部、并发、时序等)
约束:不许为了好测而修改被测函数的签名。
函数:{{代码}}

复制时把 {{变量}} 换成你自己的内容;变量名不要改,改了模型容易把它当普通文字。

要替换的变量

变量示例值
{{框架}}Vitest
{{代码}}(粘贴被测函数,含它依赖的入参结构)

实操建议

常见问题

为什么只实现 4 条而不是全部?

测试也有维护成本。先把最能抓到 bug 的跑起来,覆盖率再按需补,比一次性写 30 条然后全烂在那里强。

依赖数据库的函数怎么测?

让它把纯逻辑抽出来单独测,或者用内存实现替身。第 4 条会明确告诉你哪些属于测不到的部分。

配套工具