V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
wwang7
V2EX  ›  分享创造

我开源了一个用 ChatGPT 自动生成 Golang 测试用例的小工具

  •  
  •   wwang7 · 2023-04-05 12:55:10 +08:00 · 1735 次点击
    这是一个创建于 590 天前的主题,其中的信息可能已经有所发展或是发生改变。

    🚀 简介

    GPT4Go 是一个使用 OpenAI 的 ChatGPT 🌐 自动为 Golang 生成测试用例文件的开源项目。该项目帮助开发者快速为他们的函数创建测试用例,确保代码得到高效和全面的测试 🧪。

    🌟 特点

    • 🎯 使用 OpenAI 的 ChatGPT 为 Golang 函数自动生成测试用例。
    • 🚫 跳过已经测试过的函数,不生成测试用例。
    • 📚 生成组织良好、易于阅读的测试用例代码。

    🔗 链接

    📄 其它

    基本原理:将指定目录下的 Golang 源文件中的每一个函数遍历,发给 ChatGPT 生成测试用例,然后把返回结果中的杂七杂八的格式整理好,把 import 部分提取合并,生成对应的*_test.go文件。

    注意事项:个人体使用下来感觉 GPT-4 模型生成的测试用例的质量高很多,如果有 GPT-4 的 API 而且不很差钱的,建议使用 GPT-4 模型。

    6 条回复    2023-04-07 00:18:03 +08:00
    ob
        1
    ob  
       2023-04-05 13:13:11 +08:00 via Android
    支持连接数据库的吗
    FreeBSD
        2
    FreeBSD  
       2023-04-05 18:05:29 +08:00 via Android
    看起来不错,已经 star
    wwang7
        3
    wwang7  
    OP
       2023-04-06 11:58:57 +08:00
    @ob 目前没有。连接数据库的目的是什么?存储每个函数的变更历史和状态?
    wwang7
        4
    wwang7  
    OP
       2023-04-06 11:59:08 +08:00
    @FreeBSD 感谢支持
    ob
        5
    ob  
       2023-04-06 14:06:50 +08:00
    @wwang7 #3 很多业务方法都跟数据库打交道,然后写 UT 的时候,不是要 mock DB 吗,我是想问题你这个自动生成的 UT ,有做 mock DB 这类的吗?
    wwang7
        6
    wwang7  
    OP
       2023-04-07 00:18:03 +08:00 via iPad
    @ob 懂了,目前还没有专门支持
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5372 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 07:36 · PVG 15:36 · LAX 23:36 · JFK 02:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.