V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
mooncakeSec
V2EX  ›  程序员

AI 编程中的单元测试

  •  
  •   mooncakeSec · 2 天前 · 1351 次点击

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

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

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

    9 条回复    2025-11-18 15:58:32 +08:00
    azure233
        1
    azure233  
       2 天前
    TDD 也许可以? 把需求告诉 ai ,让 ai 先写出对应的测试。保证自己能够一步步看到和理解测试的生成过程。
    zmcity
        2
    zmcity  
       2 天前
    分两个 task 写,一个专门写测试,另一个专门用于通过测试
    rb6221
        3
    rb6221  
       2 天前   ❤️ 1
    开两个会话
    如果是你说的自己给自己打分,首先他要知道你的业务代码是什么样的,才可能根据你的业务代码创建相应的测试代码来打分
    但是两个会话,写单元测试的会话是不知道你的业务代码长什么样的,他也就不存在作弊
    jiansihun
        4
    jiansihun  
       2 天前
    你写完之后,让它写单元测试验证呀
    geminikingfall
        5
    geminikingfall  
       2 天前
    TDD 可以,先写测试。
    jqknono
        6
    jqknono  
       2 天前
    别让 claudesonnet 写测试, 否则它总是"让我用更简化的测试来验证", 一看和业务代码风马牛不相及.
    crackidz
        7
    crackidz  
       2 天前
    你可以说 AI 喷射太快你来不及看具体的业务代码,但是你总不能测试的场景也不看吧...
    visper
        8
    visper  
       1 天前
    AI 把测试改了适应 bug.
    mooncakeSec
        9
    mooncakeSec  
    OP
       1 天前
    @crackidz 一针见血,所以大佬的最佳实践是专注测试 case 吗
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   1227 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 17:32 · PVG 01:32 · LAX 09:32 · JFK 12:32
    ♥ Do have faith in what you're doing.