泥潭日报 uscardforum · 内容汇总

同事每天Submit 10个PR

内容摘要

同事每日提交 10 个 PR,含 20% LLM 改代码及 80% LLM 写测试用例,引发对效率与合理性的讨论。

闲聊脉络

楼主质疑同事每天提交 10 个 PR(每 PR 含 20% LLM 修改代码、80% LLM 生成测试用例)的合理性(#1)。多数回复认为不合理,指出正常开发不应花费数分钟手写大量测试用例,且 LLM 生成的测试往往质量差、假设奇怪或存在覆盖垃圾(#2, #6, #11)。

经验与数据点

  • 审批现状:有用户表示去年起已不再手写任何测试用例,甚至半年未写一行代码(#2, #13)。
  • 极端案例:有用户称月均审批 100 个 PR 且排名第一,认为出问题无人背锅(#9)。
  • LLM 行为:LLM 倾向于通过生成大量低质量测试用例来自我满足、糊弄人或消耗 Token,若前期 Spec 不深入会导致后期检查困难(#11)。
  • 具体代码示例:有用户贴出 Cursor 生成的"coverage spam"测试代码,包含无意义的 expect(1).toBe(1) 等(#12)。
  • 公司现状:部分公司已演变为“闭眼 merge",坏了再找 CC 修复(#14);也有用户表示因 Coverage 不足被 Pipeline 阻塞才被迫 Ping 人(#15)。

争议或不同意见

  • 合理性分歧:一方认为这是“卷”起来的正常现象(#5, #10),另一方认为这是 LLM 拖时间和消耗 Token 的表现(#11)。
  • 应对策略:有人建议直接 approve 并让 Agent 自动左右互搏(#4),有人则无奈表示只能看 PR 而不写 Test(#15)。
原始内容
--- 第 1 楼来自 VFIAX 的回复 (2026-06-05 09:59:16 PDT) ---

每个PR一百到几百line change,里面20%是LLM改的Code,80%是LLM写的Test Cases,这合理嘛

--- 第 2 楼来自 up9080 的回复 (2026-06-05 09:59:56 PDT) ---

不合理,竟然不是 100% 的 TestCase。从去年开始我已经没有手写过任何一个测试用例了。

--- 第 3 楼来自 pangding 的回复 (2026-06-05 10:02:29 PDT) ---

lz到意思应该是PR的80%是test,test 100%是LLM写的

--- 第 4 楼来自 gordgord 的回复 (2026-06-05 10:02:46 PDT) ---

不合理,居然让你看到PR,而不是agent自动左右互搏approve

--- 第 5 楼来自 up9080 的回复 (2026-06-05 10:03:54 PDT) ---

哦哦,对。这还挺正常的。

--- 第 6 楼来自 VFIAX 的回复 (2026-06-05 10:05:26 PDT) ---

对。正常人谁能动不动手写几十上百的test cases几分钟

--- 第 7 楼来自 VFIAX 的回复 (2026-06-05 10:06:01 PDT) ---

主要是亚历山大啊,容易显得我干活不多

--- 第 8 楼来自 figfig 的回复 (2026-06-05 10:10:23 PDT) ---

所以你干嘛了

--- 第 9 楼来自 ze3kr 的回复 (2026-06-05 10:11:12 PDT) ---

approve 呗。我一个月 approve 了一百个,排行榜名列第一,出了问题也没人找我背锅反正

--- 第 10 楼来自 daoerzhi 的回复 (2026-06-05 10:11:22 PDT) ---

事情变得卷起来了

--- 第 11 楼来自 AlveROsT 的回复 (2026-06-05 10:13:00 PDT) ---

有时候感觉 LLM 是真的喜欢通过写 test case 来自我满足+糊弄人+拖时间和消耗 token 有些 test case 你一不留神 LLM 就写了好多,检查的时候才发现要么没必要、要么质量差、有的还有各种奇怪的 assumption 和之前 spec 阶段的不完全相符,如果前期 spec 不深入那更是地狱。

--- 第 12 楼来自 ze3kr 的回复 (2026-06-05 10:15:39 PDT) ---

去年的时候 Cursor 还给我写出类似这样的测试 import React from 'react'; import { describe, expect, test } from '@jest/globals'; import { render } from '@testing-library/react'; import './index'; function ImportantComponent() { return <div>Something Important</div>; } describe('coverage spam', () => { test('Test ImportantComponent', () => { render(<ImportantComponent />); expect(1).toBe(1); }); });

--- 第 13 楼来自 老瓢虫 的回复 (2026-06-05 10:16:16 PDT) ---

不合理,我已经半年没有写过一行代码了

--- 第 14 楼来自 Allen_Z 的回复 (2026-06-05 10:19:37 PDT) ---

现在公司早就这样了 每天都是啥都不知道 闭眼merge就是了 坏了再找CC修呗

--- 第 15 楼来自 Onvon 的回复 (2026-06-05 10:30:44 PDT) ---

会写test已经超纲了 我现在看的好多pr都不写test. coverage不够被pipeline blocked了才ping我怎么提高coverage 蚌埠住了