使用AI编写测试用例——详细教程
- 随着今年chatGPT的大热,每个行业都试图从这项新技术当中获得一些收益
- 我之前也写过一篇测试领域在AI技术中的探索:软件测试中的AI——运用AI编写测试用例
- 现阶段AI还不能完全替代人工测试用例编写,但是如果把AI当做一个提高效率的工具,它将会是一个很实用很强大的辅助。
- 经过一段时间的实践和沉淀之后,已经有一个相对成熟的模式。
- 此篇文章则是将这段时间的经验,总结为教程分享出来。
- 但是这种使用AI编写用例的模式仍然有很多不足的地方,也欢迎大家提出意见和建议,一起改进优化。
文章目录
- 一、准备工作
- (一)AI介绍
- (二)该选择哪个AI
- ChatGPT
- NewBing(新必应)
- 文言一心
- (三)AI编写测试用例原理
- 二、编写用例
- (一)通过需求生成测试点
- (二)通过测试点生成测试用例
- (三)注意事项
一、准备工作
(一)AI介绍
- AI即人工智能,这项技术希望产出一种以人类智能相似的方式做出反应的智能机器。
- ChatGPT是OpenAI研发的一款聊天机器人程序。ChatGPT是人工智能技术驱动的自然语言处理工具。
- 使用AI编写测试用例,其实是将我们提供的需求或测试点通过聊天机器人程序,对自然语言进行处理,重新组合为测试用例。
(二)该选择哪个AI
ChatGPT
- 自从ChatGPT大热之后,大部分国内途径可以获取到的AI(聊天机器人)都为GPT-3.5版本。
- GPT-4.0版本因为要付费等等原因,使用门槛会相对更高。
- GPT-3.5版本当然比不上GPT-4.0版本,但如果只是用作编写测试用例的话,3.5版本也是够用的。
NewBing(新必应)
- 微软推出的NewBing(新必应)与ChatGPT使用同一个算法模型
- 并且New Bing的回答结果带有搜索来源的地址,即使作为普通的搜索引擎也比传统搜索引擎好用很多。
- 最重要的一点,现阶段NewBing是免费的,并且只由单次对话的限制,对话的总次数没有限制。
- NewBing也是我现在最常用的AI。

文言一心
- 前两个AI想要在国内访问需要一定的门槛,过程相对复杂
- 如果只是简单的体验一下智能聊天机器人,可以尝试一下国内的文言一心

(三)AI编写测试用例原理
- 正如前面介绍的那样,聊天机器人程序本质上是一个自然语言处理工具。
- 它就像一面镜子,它输出什么取决于你给它什么
- 所以,该提供哪些信息,该如何下达命令,就是最核心的问题。
给AI下达命令,有一个专有名词叫prompt(提示词)
- 例如,下图注册弹框的需求

- 我让AI生成这条需求的测试点:“1.点击手机号输入框弹出键盘。限制只能输入数字,除数字外字符输入不成功。手机号限制输入11位;”
- 得到的结果如下,可以看到输出的结果大部分是来源于我的提示词,AI将提示词分析并重新整合,输出一份测试点。

- 这就意味着,提示词越详细,输出的内容就越贴近想要的结果,但随着而来的成本也就越高。
- 但输出的内容不够准确,后期的修改的成本也会变高。
- 所以,如何平衡成本也是一个很大的问题。
二、编写用例
- 理想状态是直接把需求直接提供给AI,让AI直接写用例,但这样与实际想要达到的结果相差甚远。
- 所以建议,先使用需求通过AI生成测试点,再测试点通过AI生成测试用例。
- 以下示例说明以newbing为例
(一)通过需求生成测试点
- 下面是向AI发出指令的模板,黄色字的内容是可选项或说明:
注意:由于AI回复的字数有限制,建议对需求进行分块分类型,然后分批生成测试点。
我是一名移动端软件测试工程师,下面这份需求帮我输出一份测试点,(或 每条测试点需要输出正向和逆向的用例):
需求名称:需求名称
需求说明:需求说明
输出要求:将测试点分为触发条件、触发时机、样式、功能逻辑、异常处理几个模块,并且新增一列,表明所属的模块。(如果是非页面性的功能,使用触发条件、触发时机,如果是页面、弹框等,使用展示条件、展示时机)
输出格式:表格,分为序号、所属模块、测试点,总共三列。
- 以下图注册弹框的需求为例,使用的AI是newbing
- 按照模板编辑后,黏贴到newbing并发送

- 输出的结果如下

- 按照模板编辑后,黏贴到newbing并发送
(二)通过测试点生成测试用例
- 下面是向AI发出指令的模板,蓝色字的内容是可选项或说明:
注意:由于AI回复的字数有限制,建议跟生成测试点一样,分批生成测试用例。
我是一名移动端软件测试工程师,下面这份是针对移动端软件的测试点,帮我输出一份测试用例,每条测试点用一条以上用例验证 (或 每条测试点需要输出正向和逆向的用例):
需求名称:需求名称(需求名尽量概述功能点)
模块名称:模块名称(用例中所属模块)
需求说明:需求说明
功能流程:功能流程(可以写一条正向的流程)
输出要求:需要包含用例名称、所属模块(填写测试点所属模块名称)、前置条件(非必填,可为空)、测试步骤、预期结果
输出格式:表格。
- 以上面输出的测试点为例:
- 先编辑模板,黏贴到newbing并发送

- 输出的结果如下

- 先编辑模板,黏贴到newbing并发送
(三)注意事项
- 遇到输出数据不完整时,可以让AI继续输出后续的内容。例如:“从第五条开始,继续输出剩下的用例”
- 注意,AI直接输出的结果,大部分不够准确,还是需要经过人工审核,
此篇文章只是提供了一个可行的方法,但是它还不完美,欢迎大家一起讨论一个更完美的为未来~
————————————————————————————————————————————
本人运营的博客同名公众号【软件测试必备技能】不定期会上传测试相关资料,可点击文章下方二维码,前往领取~

相关文章:
使用AI编写测试用例——详细教程
随着今年chatGPT的大热,每个行业都试图从这项新技术当中获得一些收益我之前也写过一篇测试领域在AI技术中的探索:软件测试中的AI——运用AI编写测试用例现阶段AI还不能完全替代人工测试用例编写,但是如果把AI当做一个提高效率的工具ÿ…...
又哭又笑,这份面试宝典要是早遇到就好了
01、算法原理 选择排序(Selection sort)是一种简单直观的排序算法。 第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素&#…...
订单30分钟自动关闭的五种解决方案
1 前言 在开发中,往往会遇到一些关于延时任务的需求。例如 生成订单30分钟未支付,则自动取消生成订单60秒后,给用户发短信 对上述的任务,我们给一个专业的名字来形容,那就是延时任务 。那么这里就会产生一个问题,这…...
【vSphere 8 自签名 VMCA 证书】企业 CA 签名证书替换 vSphere VMCA CA 证书Ⅰ—— 生成 CSR
目录 替换拓扑图证书关系示意图说明 & 关联博文1. 默认证书截图2. 使用 certificate-manager 生成CSR2.1 创建存放CSR的目录2.2 记录PNID和IP2.3 生成CSR2.4 验证CSR 参考资料 替换拓扑图 证书关系示意图 本系列博文要实现的拓扑是 说明 & 关联博文 因为使用企业 …...
【diffusion model】扩散模型入门
写在最前,参加DataWhale 10月组队学习。 参考资料: HuggingFace 开源diffusion-models-class 1.扩散模型介绍 2.调用模型生成一张赛博风格的猫咪图片 2.1 安装依赖包 %pip install -qq -U diffusers datasets transformers accelerate ftfy pyarrow9…...
[Spring]为什么Spring动态代理默认使用CGlib,而不是JDK代理?
文章目录 原因一:CGlib不需要接口原因二:CGlib效率高原因三:JDK代理会导致注解失效如果希望使用JDK代理扩展AOP in Spring Boot, is it a JDK dynamic proxy or a Cglib dynamic proxy?SpringSpringBoot 原因一:CGlib不需要接口 …...
最长上升子序列(二分)代码模板
用二分的思想求最长上升子序列的思想就是保持单调性,用一个q[]数组来作为一个单调数组。 每次将a[i]放进q数组中,但是要保持单调性,q数组的长度就是答案。 q[]数组中存的是所以以下标为长度的最长子序列的结尾的最小值。 理解q[]数组的意义…...
存储优化知识复习一详细版解析
存储优化 知识复习一 一、 选择题 1、1948 年,____提出了“信息熵”(shāng) 的概念,解决了对信息的量化度量问题。 A、薛定谔 B、香农 C、克劳修斯 D、纳什 【参考答案】B2、 RAID2.0技术下,LUN是建立在____上。 A、硬盘 B、条带 C、Chun…...
“暂停加息,股市低迷:242只股票创新低,比特币突破2.8万美元后看涨趋势不可挡!“
11 月1日 FOMC 会议 美联储主席杰罗姆鲍威尔周五在纽约发表讲话,毫不意外地,他采取了更加鸽派的立场,因为在不确定的世界中,美国政府的过度杠杆化和可能即将到来的经济衰退已成为共识。 根据鲍威尔对未来加息的最低限度讨论&…...
微信小程序会议OA系统其他页面
前言: 及上一文章:https://blog.csdn.net/djssubddbj/article/details/133895170?spm1001.2014.3001.5501我们所写的会议OA的首页,在这个上面我们继续完成我们的会议OA系统,这是我们的本期所要完成的页面 自定义组件 微信小程序…...
LabVIEW中使用Get LV Class Default Value 出现错误1498
LabVIEW中使用Get LV Class Default Value 出现错误1498 在LabVIEW中开发了一个应用程序,其中包含可以在执行时动态配置插件的基类。生成可执行文件后,当应用程序要执行子类时,收到以下错误信息。 Error1498 occurred at Gen LV Class Defa…...
RabbitMQ中的核心概念和交换机类型
目录 一、RabbitMQ相关概念二、Exchange类型三、RabbitMQ概念模型总结 一、RabbitMQ相关概念 Producer:生产者,就是投递消息的一方。生产者创建消息,然后发布到RabbitMQ中。消息一般可以包含两个部分:消息体和附加消息。 消息体…...
HarmonyOS开发:Log工具类源码分析
前言 一转眼就十月中旬了,国庆的劲真大,到现在还未缓过来,以至于要更新的文章迟迟未发布,大家可以看到,最近一段时间的文章,都是关于HarmonyOS相关的,两个原因吧,一是我司有这样的任…...
FFmpeg和rtsp服务器搭建视频直播流服务
下面使用的是ubuntu的,window系统可以参考: 通过rtsp-simple-server和ffmpeg实现录屏并发布视频直播_rtsp simple server_病毒宇宇的博客-CSDN博客 一、安装rtsp-simple-server (1)下载rtsp-simple-server 下载地址:R…...
数据图册页面(左边一列图片缩略图,右边展示图片大图)
最近要写这么一个页面,左侧一列图片缩略图,点击左侧缩略图后有选中效果,然后右侧展示图片原图,还能够左右翻页查看。 最后写了一个demo出来,demo还不是很完善,需要自己修改,后面我也给出了修改建…...
leetcode:105从前序与中序遍历序列构造二叉树
105:从前序与中序遍历序列构造二叉树 啊,好久都没有更新算法题目了。曾今是C,如今是Java,感慨啊。 像树这样的算法题,基本都逃不开递归。递归的思想是:将大任务拆分为小任务。我们不妨构建一个函数&#…...
H5前端开发——DOM
H5前端开发——DOM 在H5前端开发中,DOM(Document Object Model)是一个非常核心的概念,指的是文档对象模型。简单来说,DOM是浏览器将HTML文档转换为一棵树形结构的方式,这样我们可以通过JavaScript脚本语言来操作和修改HTML文档。 DOM模型由节点组成,节点包括元素(ELEM…...
专访 Web3Go 新产品 Reiki:培育 AI 原生数字资产与创意新土壤
从 DeFi 到 NFTFi、SocialFi,web3 从业者在尝试 crypto 与区块链技术能为我们的生活、创作、娱乐和文化带来何种新体验,而生成式人工智能的突破性发展则为我们与链上世界的交互、社区内容创作等带来了新的体验,改变互动、交易和价值创造方式。…...
Docker仓库harbor私服搭建
Harbor和Registry都是Docker的镜像仓库,但是Harbor作为更多企业的选择,是因为相比较于Regisrty来说,它具有很多的优势。 提供分层传输机制,优化网络传输 Docker镜像是是分层的,而如果每次传输都使用全量文件(所以用FT…...
【LangChain系列 11】Prompt模版——拼装组合
原文地址:【LangChain系列 11】Prompt模版——拼装组合 本文速读: 多prompt模版组合 单prompt模版拼装 在平常业务开发中,我们常常需要把一些公共模块提取出来作为一个独立的部分,然后将业务中去将这些模块进行组合。在LLM应用…...
从CAN到CANFD:一文搞懂协议差异、电平实测与车载网络升级实战
从CAN到CANFD:车载通信协议的深度解析与实战升级指南 引言 在智能汽车快速发展的今天,车载电子控制单元(ECU)数量呈指数级增长,传统的CAN总线技术已逐渐显露出带宽瓶颈。我曾参与过多个车载网络升级项目,亲…...
深度解密Jsxer:JSXBIN反编译器的技术原理与工程实现
深度解密Jsxer:JSXBIN反编译器的技术原理与工程实现 【免费下载链接】jsxer A fast and accurate JSXBIN decompiler. 项目地址: https://gitcode.com/gh_mirrors/js/jsxer 在Adobe创意套件生态中,ExtendScript二进制格式(JSXBIN&…...
XINGLIGHT成兴光 0603 球头正贴 LED 聚光透镜凸头球灯珠 高亮定向指示贴片 LED
XINGLIGHT 0603 球头正贴 LED 产品图 发光颜色 型号 红色 XL-TD1608SURC 黄色 XL-TD1608UYC 普绿 XL-TD1608SYGC 翠绿 XL-TD1608UGC 蓝色 XL-TD1608UBC XINGLIGHT 0603 球头正贴 LED,标准 0603 正装基底 顶部球面透镜一体封装,光线聚焦定向射出、视角集…...
SAP接口集成-PO/PI-SLD配置实战:从系统格局到集成目录
1. 理解SAP接口集成与PO/PI的核心组件 第一次接触SAP接口集成的开发者,往往会被PO/PI、SLD、ESR这些缩写搞得晕头转向。其实简单来说,这就是一套SAP用来连接不同系统的"桥梁工具"。想象一下你负责的电商平台需要实时获取SAP系统中的库存数据&a…...
CubiFS分布式锁性能:高并发场景测试终极指南
CubiFS分布式锁性能:高并发场景测试终极指南 【免费下载链接】cubefs cloud-native distributed storage 项目地址: https://gitcode.com/gh_mirrors/cu/cubefs CubiFS作为一款cloud-native distributed storage系统,其分布式锁机制在高并发场景下…...
从玩具小车到3D打印机:用51单片机和A4988模块玩转步进电机的5个创意项目
从玩具小车到3D打印机:用51单片机和A4988模块玩转步进电机的5个创意项目 当51单片机遇上A4988驱动模块,这个看似简单的组合却能爆发出惊人的创造力。不同于传统的驱动教程,我们将带你跨越基础,直接进入实战领域——从会动的玩具小…...
AI就绪培训为何屡屡失败
企业正投入大量时间、精力和资金培训员工使用AI工具,但近期多份报告显示,这些努力往往收效甚微,甚至彻底失败。学习平台企业Docebo在其《2026年AI就绪差距报告》中发现,尽管AI素养与应用技能在未来12至18个月内被员工和学习管理者…...
别再混淆了!RDMA的RC、UC、UD、RD服务类型,到底该怎么选?(附场景对比表)
RDMA服务类型深度解析:如何为高性能场景选择最佳方案 在分布式存储、AI训练和金融交易系统中,网络延迟往往是性能瓶颈的关键所在。RDMA(远程直接内存访问)技术通过绕过操作系统内核和CPU干预,实现了超低延迟的数据传输…...
HEIF Utility:Windows平台处理苹果HEIF图片的完整解决方案
HEIF Utility:Windows平台处理苹果HEIF图片的完整解决方案 【免费下载链接】HEIF-Utility HEIF Utility - View/Convert Apple HEIF images on Windows. 项目地址: https://gitcode.com/gh_mirrors/he/HEIF-Utility 对于使用iPhone拍摄照片的Windows用户来说…...
通感一体化中的无线电地图构建:从算法原理到协同实践
1. 无线电地图技术入门:从概念到价值 第一次听说"无线电地图"这个概念时,我脑海中浮现的是科幻电影里那些悬浮在空中的全息地图。但现实中的无线电地图技术其实更接地气——它就像是给无线信号世界画的一张"藏宝图"。想象一下&#…...
