AI测试之 TestGPT

发布于:2024-10-13 ⋅ 阅读:(65) ⋅ 点赞:(0)

如今最火热的技术莫非OpenAI的ChatGPT莫属,AI技术也在很多方面得到广泛应用。今天我们要介绍的TestGPT就是一个软件测试领域中当红的应用。

TestGPT是什么?

TestGPT是一家总部位于以色列特拉维夫的初创公司 CodiumAI Ltd.,发布的一款用于测试领域的人工智能模型(AI model),由 OpenAI 的 GPT-4 大型语言模型驱动。

官网地址: www.codium.ai

从官网的介绍可以看出,它是一个旨在协助开发人员测试他们的代码,为开发人员提供自动生成的软件测试套件建议,从而加快编码和错误扫描的AI工具。

image

如何使用?

目前TestGPT提供了针对VsCode和JetBrains的插件支持 

image

以VsCode为例,在vsCode的插件中心搜索CodiumAI即可安装

image

安装后可以Github账户直接登录连接。

下面我们来用一段有问题的python排序算法代码来看看它是如何使用的。

def insert_sort(lists):
    # 插入排序
    count = len(lists)
    for i in range(0, count): #range区间有误,这里是bug,应为(1, count)
        key = lists[i]
        j = i - 1
        while j >= 0:
            if lists[j] > key:
                lists[j + 1] = lists[j]
                lists[j] = key
            j -= 1
    return lists

切换到CodiumAI插件,连接后可以看到代码部分已经有了生成测试的入口

image

尝试生成下看看效果,稍等片刻,就可以看到AI的成果了

image

AI的辅助界面有三部分,分别是:

  • Test Suite 测试用例
  • Code Analysis 代码分析
  • Code Suggestions 代码修改建议

在用例配置部分可以做测试的基本配置

image

Coverage部分则可以看到AI生成的Case覆盖情况

image

Test部分则是具体的测试用例,本例中生成了6条用例

image

执行后可以看到用例的执行结果,但生成的测试代码都执行成功了,似乎没有通过测试代码测试出bug :(

image

Code Analysis则给出了代码的分析说明,可以

image

代码建议部分则给出了修改建议,这里倒是准确地指出了代码中的问题。

image

按照建议直接应用,可以看到代码已经修改并加了注释

image

总结

所以可以看到TestGPT还是非常优秀的,准确地分析出了代码的作用并发现了代码中有问题的地方。也帮助设计了测试用例覆盖及相关单元测试脚本。 善用这个工具已经无疑可以给开发工程师提供非常大的辅助,但是从初步的使用来看,自行生成的测试用例对于问题代码的覆盖还有不足,短期内应该还不足以完全代替测试设计。