AI 编程中的单元测试

2 天前
 mooncakeSec

我最近用 AI 完整实现了一个项目,效率很高,但也遇到了新的问题:因为绝大部分代码不是我亲手写的,所以在 Review 时既花时间,又缺乏“掌控感”,心里并不踏实。为了解决这个问题,我想到用单元测试来建立信任。但新问题又出现了:

单测如果也是 AI 写的,那在某些情况下会不会变成“AI 自己给自己打分”?如果 AI 改动了代码逻辑,自动生成的单测很可能也会同步出错或不够可靠。

在 AI 参与较多的开发流程里,单元测试到底应该怎么安排?大家通常是如何处理 AI 写代码 + 测试的质量保证问题的?

1354 次点击
所在节点    程序员
9 条回复
azure233
2 天前
TDD 也许可以? 把需求告诉 ai ,让 ai 先写出对应的测试。保证自己能够一步步看到和理解测试的生成过程。
zmcity
2 天前
分两个 task 写,一个专门写测试,另一个专门用于通过测试
rb6221
2 天前
开两个会话
如果是你说的自己给自己打分,首先他要知道你的业务代码是什么样的,才可能根据你的业务代码创建相应的测试代码来打分
但是两个会话,写单元测试的会话是不知道你的业务代码长什么样的,他也就不存在作弊
jiansihun
2 天前
你写完之后,让它写单元测试验证呀
geminikingfall
2 天前
TDD 可以,先写测试。
jqknono
2 天前
别让 claudesonnet 写测试, 否则它总是"让我用更简化的测试来验证", 一看和业务代码风马牛不相及.
crackidz
2 天前
你可以说 AI 喷射太快你来不及看具体的业务代码,但是你总不能测试的场景也不看吧...
visper
1 天前
AI 把测试改了适应 bug.
mooncakeSec
1 天前
@crackidz 一针见血,所以大佬的最佳实践是专注测试 case 吗

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1173196

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX