假设任务是“让文章搜索忽略英文大小写,同时保留空查询显示全部的行为”。Claude Code 回复“已修好,测试通过”,你仍要知道测试了什么、打开的是哪个版本,以及未检查哪些入口。
先把一句需求拆成可观察行为
以两篇标题为 MCP 入门、Skills 使用说明 的教学数据为例:
| 输入 | 预期结果 | 这项检查防止什么遗漏 |
|---|---|---|
| mcp | 仅返回MCP入门 | 基本匹配失效 |
| MCP | 与mcp相同 | 查询词没有做大小写归一化 |
| 不存在的词 | 空结果 | 错把无结果处理为全部显示 |
| 空字符串 | 返回两篇 | 修复时改变原有空查询行为 |
实际数据和可运行入口见 读项目练习。如果你的网站还有分页或“加载更多”,需要额外验证搜索后的可见数量、页码和按钮状态;上表没有覆盖那些逻辑。
查看文件,再查看命令
在使用 Git 的项目中,先看 git status --short 和 git diff -- <本次涉及的真实路径>,确认没有漏掉未跟踪文件,也没有扩大修改范围。不是 Git 项目则比较修改前副本与当前文件。不要为验收临时执行会回退别人改动的命令。
接着运行项目已有且覆盖该行为的测试。以项目确实存在 test/search.test.mjs 为前提,在 PowerShell 中:
node --test test/search.test.mjs
$searchTestExit = $LASTEXITCODE
Write-Output "search test exit: $searchTestExit"
保存测试文件路径、命令、实际通过/失败数量和错误输出。退出码 0 只能表明该命令按自己的规则成功;如果测试根本没断言空查询,它就不能证明空查询没变。
浏览器和生产分别留证
本地网站中手工输入上表四种查询,检查结果、空状态和重置行为;分别在目标桌面与移动视口检查。注意记录本地 URL、构建时间或版本标记,避免打开另一个目录启动的旧服务。
生产验收需要额外确认发布授权、正式 URL 与实际响应版本。若任务只交付本地改动,就停在本地完成,报告线上未部署;不能把浏览器里一个 localhost 截图写成“用户已经看到新结果”。
一份不会夸大完成范围的交付记录
下面是填写模板,方括号必须替换成真实记录;它不是本文的实测报告。
任务:文章搜索忽略英文大小写,保留空查询显示全部。
实际修改:[源文件路径及具体变化;另列新增文件]
直接验证:[测试命令、退出码、覆盖的输入、日志路径]
本地页面:[URL、构建版本、四项查询结果]
布局检查:[实际视口、观察结果、截图路径;未做就写未做]
生产状态:[未部署 / 经授权部署后的URL与版本证据]
未覆盖:[分页、远端接口、其他入口等实际未检查内容]
结论:[哪些要求已满足,剩余哪一项需要谁处理]
“代码已修改;四个单元场景通过;未启动浏览器;未部署”是清楚的阶段结论。“全部完成”则会隐藏剩余工作。若原任务要求完整修复网页,就应继续做浏览器检查,而不是靠免责声明结束。
测试绿了,页面仍旧:按证据定位
先比较页面实际加载的脚本路径与本次修改文件,再看是否运行了正确构建、当前本地服务指向哪个目录,最后检查缓存与部署版本。若新脚本已加载而行为仍错,回到事件绑定、分页状态或调用方,补充能复现该失败的检查。
验收证据必须和结论处于同一范围。本文提供的是验收方法与可填写记录,未运行任何读者项目,也不声称上述网页场景已全部通过。
资料来源
- Claude Code常用工作流
Claude可以执行项目工作,交付结论仍须依据实际工件与验证。
下一步
继续阅读与你当前问题相关的教程:


