写点什么

在软件测试中使用 ChatGPT

作者:Ben Linders

  • 2024-02-14
    北京
  • 本文字数:1500 字

    阅读完需:约 5 分钟

在软件测试中使用 ChatGPT

AI 可以为软件交付带来帮助,并用于自动化软件测试和优化项目工作。Dimitar Panayotov 使用 ChatGPT 生成测试数据、创建电子邮件模板,并基于测试结果生成解释。这为他节省了时间,提高了生产效率。


Dimitar Panayotov 在 2023 年 QA Challenge Accepted 大会 上分享了他如何在测试中使用 ChatGPT。


Panayotov 说,AI 是一组经过足够多数据训练的算法和神经网络,可以用来辅助 IT 从业人员。它是非常先进的辅助工具,对质量保证工程师的日常生活带来帮助,从特定主题的信息转储、测试文档和案例编写,到工作流程猜想模式。


Panayotov 说,ChatGPT 非常擅长生成测试数据,这是它的最大优势。它还可以根据需求和最佳实践创建测试策略。它可以编写测试用例,但需要额外的支持,因为它没有得到足够多的训练。

ChatGPT 可用于根据测试结果生成电子邮件模板和解释,正如 Panayotov 所说的:


它可以为只有图形和数字的测试结果生成人类可读的解释。此外,它可以根据输入创建表格。


由于 AI 模型仍在发展当中,在使用过程中可能会出现一些错误和故障,正如 Panayotov 所解释的那样:


由于数据过拟合(ChatGPT 开发者输入的信息可能不正确,或者数据的来源有缺陷),AI 在回答问题时可能提供不正确的答案或缺失值。


幻觉是另一个主要问题——基本上,大模型试图根据用户输入的字符串编写答案,但由于它存在一些限制且必须遵循一些规则,因此答案可能是完全虚构的。


Panayotov 表示,ChatGPT 是一种比 Google 或 Reddit,甚至是众所周知的 Stackoverflow 更强大的软件工具。他建议将其作为一种常规工具,了解其局限性,并不要将其用于作恶。他建议:


它将为你节省大量的时间,这些时间可以用来提高生产效率,例如学习新的编程语言和工具,或扩展你的工作能力。


InfoQ 采访了 Dimitar Panayotov,了解他如何在日常工作中使用 ChatGPT。

 

InfoQ:你如何使用 ChatGPT 来进行自动化测试?


Dimitar Panayotov:我使用 ChatGPT 进行许多操作,缩短自动化项目和 CI/CD 管道的创建和执行时间,比如:

  • 准备测试计划和测试场景——在创建基于 Web、移动或 Cucumber 测试用例的测试场景时大模型非常有用。

  • 用不同的语言创建脚本——大模型所掌握的每一种编程语言的知识令人惊叹。

  • 设计测试用例——它可以根据通用模型为特定业务逻辑创建特定的设计模式。

  • 创建电子邮件模板——生成测试数据是模型的最大优势之一。

 

InfoQ:ChatGPT 在优化软件项目工作方面表现如何?


Panayotov:以下是大模型可以帮助你提高执行速度、优化资源使用和项目结构的一些示例:

  • 格式化数据并编写文档——为项目编写文档是 IT 从业人员生活中最无聊的事情。大模型可以帮助生成这些东西,但你需要提供项目的结构。

  • 几乎从头开始实现 CI/CD 管道——通过简单的请求和规范,大模型可以生成适用于几乎所有 CI/CD 系列软件和产品的执行脚本。

  • 创建特定的类——大模型可以根据项目结构为你的项目生成特定的类。

  • 代码评审和错误处理——大模型可以对你的代码进行基本的评审,甚至找到漏洞,但你的数据可能会被用在大模型未来的答案生成中。


我们必须确定是否希望大模型访问我们的项目并向其提供私有信息。ChatGPT 是一个开源产品,向其输入任何客户或个人敏感信息都是不明智的。

 

InfoQ:对于使用 ChatGPT 进行软件测试,你有何建议?


Panayotov:正如我一直说的:要聪明地工作,不要辛苦地工作。所有的手动输入和数据生成步骤最终都可以被跳过,因为 ChatGPT 大模型就是为这个目的而生的。可以根据需要创建尽可能多的虚拟数据和基本项目结构,只是不要加入个人或客户数据,因为它们可能会在将来的版本或数据挖掘中被利用。


原文链接

https://www.infoq.com/news/2024/01/chatgpt-software-test-delivery/

2024-02-14 08:0012151

评论

发布
暂无评论
发现更多内容

阿里P7手把手教你!系统学Android从零开始,内含福利

欢喜学安卓

android 程序员 面试 移动开发

手把手教大家实现一个电子签名

麦洛

Java canvas

专访阿里巴巴研究员吴翰清:白帽子的网络安全世界观

五分钟学大数据

网络安全 采访

架构思维

无心

架构

重读《重构2》- 封装记录

顿晓

重构 4月日更

java数组打印的几种方式

Sakura

4月日更

面向K8s设计误区

阿里巴巴中间件

云计算 Kubernetes 容器 分布式

女朋友问我:什么是 MySQL 的全局锁、表锁、行锁?

一个优秀的废人

MySQL 数据库 锁机制 备份

技术干货 | 基于MindSpore更好的理解Focal Loss

华为云开发者联盟

损失函数 mindspore Focal Loss 图像物体检测 采样

[转] 程序员在工作中如何做好技术积累

小江

技术管理 架构师 自我思考 个人总结

五一高铁票难抢?用RPA机器人试试!

华为云开发者联盟

RPA

CTO 说要接入实时音视频 SDK,我到底该批多少预算?

融云 RongCloud

泰山版震撼来袭!阿里巴巴Java面试参考权威指南四月版开源

Java架构追梦

Java 阿里巴巴 架构 面试

MySQL权限管理实战!

Simon

MySQL 权限管理

Ubuntu 20.04 快捷键整理

TroyLiu

Linux ubuntu 效率 操作系统 快捷键

2021安擎昇腾AI服务器产品发布会在京成功举行

DT极客

不为人知的网络编程(十二):彻底搞懂TCP协议层的KeepAlive保活机制

JackJiang

TCP 即时通讯 IM

深入剖析共识性算法 Raft

vivo互联网技术

复制 选举 分布式协调 Leader Follower

回顾过去,展望未来,我在 InfoQ 写作平台的一周年!

JackTian

程序员 个人总结 4月日更 1 周年盛典 InfoQ 写作平台 1 周年

企业如何做数字化转型?想要资产状况及时把控,它的作用至关重要!

一只数据鲸鱼

数据挖掘 数字化 数据可视化 资产管理

那些打不垮你的,终究使你更强大

小天同学

读书 励志 个人感悟 4月日更

Flink中的状态编程

大数据技术指南

flink 4月日更

新一代容器,安全容器kata-container实践

ilinux

Kubernetes 容器

女朋友问我:MySQL 事务与 MVCC 原理是怎样的?

一个优秀的废人

Java 数据库 事务隔离级别 事务 MVCC

面试官关于线程池的这个问题把我问懵逼了。

why技术

面试 Jav 1 周年盛典

华为云AI论文精读会2021第一期:高效语义分割模型Fast-SCNN分享

华为云开发者联盟

AI 华为云

Flink的基石

五分钟学大数据

flink 4月日更

用WASM连接Rust与Python | Rust 学习笔记(三)

李大狗

Python rust 狗哥 Wasm

这个GItHub上的Java项目开源了 2021最全的Java架构面试复习指南

比伯

Java 编程 架构 面试 程序人生

架构实战营模块1作业指导

华仔

#架构实战营

GitHub面试题库+阿里巴巴2021年Java岗面试26大核心专题,成功助我砍下7家大厂Offer

Java架构追梦

Java 阿里巴巴 架构 面试

在软件测试中使用 ChatGPT_AI&大模型_InfoQ精选文章