cursor 提供一键生成单元测试、chat 分步精调、jsdoc 零交互生成、rules 自动化门禁及 /testcase-generator 批量处理 prd 五种高效测试方案,覆盖从函数级到需求级的全链路测试提效。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要为刚写完的业务函数快速配上可运行、高覆盖、能进CI的单元测试,而不是手动拼凑expect断言、反复调试mock逻辑、再核对覆盖率缺口。
用命令面板一键生成基础测试
打开含待测函数的源文件(如utils.ts或calculator.py),确保光标位于函数内部或函数名上。
按下 Cmd+K(Mac)或 Ctrl+K(Windows/Linux)唤出命令面板。
输入 /Generate test for current file 并回车——Cursor 会自动读取函数签名、参数类型、return 类型及 if/else 分支,生成带 describe/it 结构的初始测试文件。
生成的测试默认保存在同级目录下,文件名按约定为 utils.test.ts 或 calculator_test.py;若项目已存在测试文件,AI 会追加新用例而非覆盖。
用Chat分步精调测试质量
当函数含异步逻辑、外部依赖或复杂边界条件时,命令面板生成的版本往往覆盖不足。这时必须进入 Chat 界面分阶段校准。
第一步:先让 AI 拆解输入域与风险点。在 Chat 中输入:“你是一名资深测试工程师,请分析以下函数的全部输入组合、可能抛出异常的路径、以及需要 mock 的外部调用:
function fetchUser(id: number): Promise
第二步:基于分析结果,指定框架与结构生成。发送第二条消息:“请用 Jest 编写测试,要求:
① 使用 jest.mock() 模拟 fetch
② 包含三组 t.run:成功响应、404、网络超时
③ 每个子测试都带清晰的 expect.assertions(1)”
第三步:验证并补漏。运行 npm test -- --testNamePattern="fetchUser",若报错“Expected one assertion, but received zero”,说明某条路径未 await 或未触发 reject——立刻把错误日志粘贴回 Chat,追加指令:“请修正 fetchUser 测试中未 await 的 Promise 路径,并补全 timeout 场景的 AbortController 模拟”。
用JSDoc注释触发零交互生成
适合高频迭代的工具函数,比如校验器、格式化器、纯计算逻辑。无需每次唤出命令面板,光标停在函数名上就自动弹出测试建议。
方法一:在函数上方插入结构化 JSDoc 注释。
例如:
/**
@testcase {input: "", expected: false}
@testcase {input: "a@b.com", expected: true}
@testcase {input: "invalid", throws: "email format error"}
*/
方法二:右键函数名 → 选择 Generate Unit Test(需提前在 Settings → AI → Code Actions 中启用该选项)。
Agents 正在你的整个代码库中处理越来越复杂、运行时间更长的任务。本次版本引入了新的 agent 框架改进,以实现更好的上下文管理,并在编辑器和 CLI 中带来了许多提升使用体验的修复。
【注意】注释中的 throws 值必须与实际抛出的 Error message 完全一致,否则生成的 toThrow() 断言会失败。
用Rules规则强制测试随代码同步创建
团队推行测试先行(TDD)或要求 100% 方法覆盖率时,靠人提醒不可靠,必须用 Rules 实现自动化门禁。
在项目根目录创建 .cursor/rules.yml 文件,写入以下内容:
rules:
- name: "Auto-generate test on new function"
trigger: "onSave"
condition: "file.ext in ['ts', 'js', 'py'] && content.match(/function\s+\w+\(|def\s+\w+\(/)"
action: "runCommand"
command: "/Generate test for current file"
保存后,每次新建一个函数并保存文件,Cursor 就会自动在相邻位置生成对应测试桩——不是建议,是强制执行。
这一步操作起来很简单,直接把 rules.yml 文件拖进项目根目录就行。但要注意:【Rules 一旦启用,所有开发者本地都会生效,务必先在 dev 分支验证规则无误再合入 main】。
用/testcase-generator Skill批量处理PRD文档
当你手头有一份产品需求文档(.md 或 .pdf),需要为其中每个功能点生成可评审的测试用例,而不是只覆盖代码实现。
方法一:导入预置 Skill。
点击设置图标 → Rules、Skills、Subagents → New → 拖入官方提供的 testcase-generator.skill 文件,确认启用。
方法二:在 Chat 中输入斜杠命令 /testcase-generator,系统会提示你上传 PRD 文档。
上传后,AI 先做需求语义解析,识别“用户登录”“密码重置”“短信验证码过期”等原子功能点,再为每个点生成正向流、逆向流、异常流、并发流四类用例,输出格式支持 Markdown、JSON、Excel 三种。
生成的 Excel 文件可直接导入禅道或TestLink;Markdown 文件可用 Xmind 导入生成测试思维导图,按模块展开查看覆盖完整性。










