网易首页 > 网易号 > 正文 申请入驻

测试全绿,为什么Agent还是读不到那行报错?

0
分享至

跑一次测试,几百个用例通过,一个失败。测试运行器把每一个通过用例的名字、每个文件的进度、一段汇总,连同那段真正需要的堆栈信息,一起打印出来。人滚动终端时会自动忽略噪音,编码Agent不会滚动,它读的就是命令打印出来的全部内容。


问题在于,有用的那部分可能被截掉。失败命令回传到Claude Code的内容,内联部分大约只有10,000个字符。超出之后,Claude拿到的是"该长度的头尾摘录",而且没有指向剩余内容的文件路径。红色测试运行的退出码非零,会被算作失败,偏偏这种运行里,中间那段最关键。

能塞进去的部分还会留下来。Claude Code"每次请求都会发送完整对话",那些通过用例的名字会跟着后续轮次一路漂,直到对话被压缩或清空。你改不了Agent怎么读,但能改运行器打印什么。

先量,再改

像Agent那样跑测试:走管道,不进交互式终端,把标准错误合并进标准输出,然后数字节。wc -c统计的是字节数,纯ASCII输出下等同于字符数,也就是Claude Code限额用的单位。具体数字取决于你的测试套件——多少用例、日志打多少、堆栈多深,所以在自己的项目上跑,每加一个参数前后各测一次,只留下真正让计数下降的参数。

想一次比较多个变体,可以用一个小循环:

  • Vitest--reporter=minimal。Vitest 4.1新增了这个报告器,目标是"减少AI Agent的token消耗",只打印失败用例及其错误信息,抑制通过用例的控制台日志和汇总段。未配置报告器且检测到AI编码Agent时,它会自动启用。配置里写死了报告器、或检测没认出你的Agent时,需要手动传。
  • Jest--silent,阻止测试通过控制台打印消息。Jest有个默认值会咬Agent:verbose在只有一个测试文件时为true,而修完一个文件后的快速重跑,正是Agent最常做的事。
  • pytest-q是安静模式,要提防的是脚本和addopts里的-v-vv,后者连断言文本都不再截断。
  • pytest--tb=short。默认的--tb=auto会给首尾条目打长堆栈,short保留文件、行号和失败断言,通常够Agent动手;--tb=line往往太少。若addopts开了--showlocals,每次堆栈都带局部变量,可用--no-showlocals关掉。

Go、Rust、PHP、Ruby

go test ./...本身已经安静,通过的包只打一行ok汇总。-v会把所有测试和Log输出都打出来,Makefile目标或Agent顺手加上它就前功尽弃。想要更友好的视图可以用gotestsum包装go test -json,默认的pkgname格式每个包一行,dots格式每个用例一个字符,两者增长维度不同,都得在仓库里实测。

Cargo要两边都加:cargo test -q -- --quiet。第一个-q是Cargo自己的,隐藏它的日志;--之后的交给测试框架,libtest的--quiet每个用例显示一个字符而非一行,是--format=terse的别名,默认的pretty则是一行一个用例。

PHPUnit用--no-progress关掉执行进度,失败和结果汇总照常打印。要避开两个邻居:--testdox按名字报告每个用例,--no-output连失败详情一起吞掉。RSpec默认就是progress格式,通过打点、失败打F;如果项目的.rspec文件里写了--format documentation,改成progress或直接删掉那行。

第九个开关:第一个失败就停

上面每个运行器都有同一个开关的变体。Agent在修一个问题时,第一个失败之后的输出,都是它动手前要先读完的负担。Cargo的提前停止粒度更粗:第一个测试可执行文件失败就退出,但libtest仍会跑完该文件内的所有用例,它自己的--fail-fast需要-Z unstable-options。

拼起来的快速循环大致是这样:

  • npx vitest run --reporter=minimal --bail=1
  • npx jest --silent --bail
  • pytest -q --tb=short -x
  • go test -failfast ./...
  • cargo test -q -- --quiet
  • vendor/bin/phpunit --no-progress --stop-on-failure
  • bundle exec rspec --format progress --fail-fast

提前停止是给循环用的,不是给终点用的。Agent说完成之前,应该安静地跑完整套件,读完每一个失败。

把命令钉住,再看表

参数只有被用上才有效。把命令写进Agent会话启动时读取的文件:Claude Code会把CLAUDE.md加载进上下文,AGENTS.md则是Codex、Gemini CLI、Cursor、Aider等读取的开放格式。Claude Code的成本指南还列了两个更重的选项:用PreToolUse钩子重写测试命令,只让失败回来;或在子Agent里跑测试,让冗长输出留在子Agent的上下文里,只返回摘要。

然后要能看到效果。Hermes IDE的2.3.4版本加了上下文计量表,显示对话有多满,接近满时提供Compact。用默认参数和安静参数各跑一次套件,在轮次之间看表。压缩是事后补救且不免费:Claude Code文档指出/compact要读取它总结的对话,压缩一个大上下文本身就是一次大请求。前面那些参数,才是更便宜的修法。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
德甲最新积分战报:多特超越拜仁登顶,帕德博恩爆冷绝杀,莱比锡制造惨案

德甲最新积分战报:多特超越拜仁登顶,帕德博恩爆冷绝杀,莱比锡制造惨案

足球狗说
2026-10-25 04:29:32
郑智:平局结果有点可惜,最后一球终结的能力确实有待提高

郑智:平局结果有点可惜,最后一球终结的能力确实有待提高

懂球帝
2026-10-25 07:22:47
上海险胜福建拒爆冷:古德温30+6+11 拉塞尔16分王哲林12+8

上海险胜福建拒爆冷:古德温30+6+11 拉塞尔16分王哲林12+8

醉卧浮生
2026-10-24 21:29:56
十年梦碎!“儿子刚上大学,就开始报复我!”,父母在网上吐槽落泪,网友:你们也不无辜

十年梦碎!“儿子刚上大学,就开始报复我!”,父母在网上吐槽落泪,网友:你们也不无辜

蝴蝶花雨话教育
2026-10-25 08:46:24
1-0!南通队获5连胜+0丢球 时隔2年回归中超 江苏足球重返顶级联赛

1-0!南通队获5连胜+0丢球 时隔2年回归中超 江苏足球重返顶级联赛

我爱英超
2026-10-25 00:36:40
美国为何没有贪官?不是没有,是因为美国从制度上消灭了贪官,就连贪污都是合法的

美国为何没有贪官?不是没有,是因为美国从制度上消灭了贪官,就连贪污都是合法的

扶苏聊历史
2026-09-12 17:43:57
乌克兰征兵中心遭突击搜查,现场触目惊心,壮丁难道没有人权?

乌克兰征兵中心遭突击搜查,现场触目惊心,壮丁难道没有人权?

影孖看世界
2026-10-24 21:44:22
成都蓉城球迷现场边看比赛边量血压!输球后血压飙升倒下,被送往医院

成都蓉城球迷现场边看比赛边量血压!输球后血压飙升倒下,被送往医院

念洲
2026-10-25 10:38:50
太意外了!42岁女子停经一月以为老了,B超竟查出怀孕5周:大儿读高中,全家懵了

太意外了!42岁女子停经一月以为老了,B超竟查出怀孕5周:大儿读高中,全家懵了

王老师你还好吗
2026-10-25 11:46:28
都错怪高市早苗了?石破茂透露内幕,这个女人不仅坏,而且很愚蠢

都错怪高市早苗了?石破茂透露内幕,这个女人不仅坏,而且很愚蠢

史智文道
2026-10-25 10:09:36
问界为什么只公布速度是139?答案在他们的官网里

问界为什么只公布速度是139?答案在他们的官网里

西游日记
2026-10-23 13:21:38
伟大的长征:蒋介石居然因为毛主席重新领导红军而食不下咽……

伟大的长征:蒋介石居然因为毛主席重新领导红军而食不下咽……

王嚾晓
2026-10-24 19:26:38
日本输给了广东省!作为发达国家被中国一省超越,还怎么混?

日本输给了广东省!作为发达国家被中国一省超越,还怎么混?

让心灵得以栖息
2026-10-24 11:40:53
5-3,泰山队送三镇降级,克雷桑2球冲击金靴,末轮又成争冠判官

5-3,泰山队送三镇降级,克雷桑2球冲击金靴,末轮又成争冠判官

替补席看球
2026-10-24 17:37:40
乌前议员称,泽连斯基2022年准备接受俄所有要求,每个条款都同意

乌前议员称,泽连斯基2022年准备接受俄所有要求,每个条款都同意

麓谷隐士
2026-10-25 09:03:30
释永信塌房后,被曝为女明星开光,除了李湘外,多名女星被拉下水

释永信塌房后,被曝为女明星开光,除了李湘外,多名女星被拉下水

阿器谈史
2026-01-08 13:16:09
马天宇谈生活状态:守着农场种菜养鸡,钱够花便无所谓

马天宇谈生活状态:守着农场种菜养鸡,钱够花便无所谓

陈意小可爱
2026-10-24 14:11:18
武大杨景媛案例编入上海高校教材持续发酵!三名主编任职信息被扒,均供职于二三本院校信息

武大杨景媛案例编入上海高校教材持续发酵!三名主编任职信息被扒,均供职于二三本院校信息

火山詩话
2026-10-25 07:04:08
央视最苦命女主持:男友被判死缓,丈夫惨死狱中,49岁孑然一身

央视最苦命女主持:男友被判死缓,丈夫惨死狱中,49岁孑然一身

残梦断忆
2026-10-25 06:42:09
“我爸好无能,连个章都不给我盖”,女大学生幼稚发言,气到了网友

“我爸好无能,连个章都不给我盖”,女大学生幼稚发言,气到了网友

熙熙说教
2026-10-19 15:40:48
2026-10-25 12:20:49
码上闲叙
码上闲叙
有态度网友ytd
198文章数 102关注度
往期回顾 全部

科技要闻

苹果首款折叠屏没能养肥黄牛

头条要闻

小鹏X9出事故安全气囊一个都没弹出 售后:撞的点位不对

头条要闻

小鹏X9出事故安全气囊一个都没弹出 售后:撞的点位不对

体育要闻

从乐透秀到总冠军再到没工作 一共要几年?

娱乐要闻

李连杰回应抛妻弃女传闻,透露四个女儿关系

财经要闻

手机洗牌:华为苹果守住了 小米OV换打法

汽车要闻

大众安徽与众09正式上市 双十一权益价16.99万起

态度原创

本地
时尚
亲子
教育
公开课

本地新闻

这么近,那么美,周末赴贺州丨大湾区后花园

秋天裤子不用买贵的,准备好蓝色牛仔裤,减龄清爽又不挑人

亲子要闻

孩子叛逆的真相,你家孩子叛逆吗?

教育要闻

“全班都长一个样!”技校班级女生合照火了,网友:流水线的精神小妹

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版