AI测试之 TestGPT

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

TestGPT是什么?

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

官网地址: www.codium.ai

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

如何使用?

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

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

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

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

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插件,连接后可以看到代码部分已经有了生成测试的入口

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

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

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

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

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

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

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

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

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

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

总结

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

相关推荐
awonw41 分钟前
[java][框架]springMVC(1/2)
测试工具·postman
小袁在上班4 小时前
Python 单元测试中的 Mocking 与 Stubbing:提高测试效率的关键技术
python·单元测试·log4j
测试19984 小时前
外包干了2年,快要废了。。。
自动化测试·软件测试·python·面试·职场和发展·单元测试·压力测试
迃幵chen5 小时前
wireshark-网络分析工具
网络·测试工具·wireshark
孤蓬&听雨6 小时前
RabbitMQ自动发送消息工具(自动化测试RabbitMQ)
分布式·测试工具·自动化·rabbitmq·自动发送消息
土小帽软件测试7 小时前
jmeter基础01-2_环境准备-Mac系统安装jdk
java·测试工具·jmeter·macos·软件测试学习
安冬的码畜日常7 小时前
【The Art of Unit Testing 3_自学笔记06】3.4 + 3.5 单元测试核心技能之:函数式注入与模块化注入的解决方案简介
笔记·学习·单元测试·jest
王解9 小时前
Jest项目实战(2): 项目开发与测试
前端·javascript·react.js·arcgis·typescript·单元测试
qq_4337169510 小时前
测试分层:减少对全链路回归依赖的探索!
自动化测试·软件测试·功能测试·测试工具·回归·pytest·postman
qq_4337169511 小时前
Postman断言与依赖接口测试详解!
自动化测试·软件测试·功能测试·测试工具·mysql·接口测试·postman