软件测试中的AI——运用AI编写测试用例

文章目录

  • 一、现状
  • 二、测试技术可结合AI的几个方向
  • 三、尝试使用AI编写测试用例(实验过程)
    • 1、AI联系上下文的能力弱
    • 2、回答的内容类似于能在网上搜索到的内容
    • 3、需要有一个明确的指令
    • 4、输出内容有限
    • 5、无法想象到需求描述之外的内容
  • 四、总结:使用AI编写测试用例方案
    • 1、方案
    • 2、存在的问题及解决方案
    • 3、存在风险、疑虑

一、现状

  • 随着chatGPT的发布,点燃了人们对人工智能的热情,也同样引起了一场“人类将会被AI替代”的恐慌。
  • 谁都知道现阶段人工智能难以落地,但几乎是所有人,相关的、不相关的领域都争先恐后的涌入这项技术的研究当中。
  • 大家普遍人为即使现在还未在自己身上发生“机器替代人工”,但一旦出现这种可能性,它带来的变革将十分迅速。
  • 谁都担心在这场变革中落后于他人,从而导致失去先机,甚至是被淘汰。

二、测试技术可结合AI的几个方向

  • “机器替代人工” 那么首先从人工的内容入手
  • 那么从软件测试工作,都有什么工作内容
    • 测试用例编写与执行、bug定位与跟踪,
    • 测试报告等一些文档的编写
    • 自动化脚本编写
  • 测试用例算是测试工作中的一个重要的文档
  • 而当前的AI技术大多数运用于文档编写,所以运用AI来编写测试用例是首先能想到的实践方向。

三、尝试使用AI编写测试用例(实验过程)

  • 因为此篇文章主要探讨一种工作模式的可行性,所以直接使用CSDN的chitGPT作为测试对象
    软件测试中的AI——运用AI编写测试用例_第1张图片
  • 在整个实验的过程中,确认了使用AI编写测试用例确实可行。但过程中也暴露了一些问题。

1、AI联系上下文的能力弱

  • 在问答交流的过程中,不算流畅
    软件测试中的AI——运用AI编写测试用例_第2张图片

2、回答的内容类似于能在网上搜索到的内容

  • 空泛的问题,得到空泛的答案。
  • 如果没有一个明确的指令,得到的内容很像是通过搜索引擎获取到的一样
    软件测试中的AI——运用AI编写测试用例_第3张图片

3、需要有一个明确的指令

  • 当我开始给AI一个明确的需求的时候,这个实验变得有趣了起来
  • AI的回答已经是能够运用到实际测试用例当中的测试点了。
    软件测试中的AI——运用AI编写测试用例_第4张图片

4、输出内容有限

  • 当我把编写用例的指令再明确一些,AI输出的结果已经非常完整了
    软件测试中的AI——运用AI编写测试用例_第5张图片
  • 但是可能因为内容太多,一会就报错了。
    软件测试中的AI——运用AI编写测试用例_第6张图片

5、无法想象到需求描述之外的内容

  • 在我两次问答的过程中,有意去掉一些内容,比如弹出键盘的这个描述。
  • 含有这个描述时,AI回答的内容也包含这个。
    软件测试中的AI——运用AI编写测试用例_第7张图片
  • 去除这个描述,AI回答的内容也就没有包含这个内容。软件测试中的AI——运用AI编写测试用例_第8张图片

四、总结:使用AI编写测试用例方案

  • AI就像一面镜子,提供的指令是模糊,照出的结果也是模糊的。指令越清晰,结果也越清晰。
  • 针对上面的过程,我总结出一个可行的方案

1、方案

  1. 向AI输入需求文档,及编写用例的指令
  • 我在上诉实验过程使用的指令如下,有兴趣可以尝试一下:
    编写下面这段需求的测试用例。
    需求说明:
    1.手机号输入框限制只能输入数字,除数字外字符输入不成功。手机号限制输入11位;
    2.点击发送验证码,向服务端发起获取验证码请求。并且客户端提示“验证码已发送”;
    3.密码输入框,限制只能输入数字或字母,限制位数为8-16位;
    4.点击注册按钮提交数据;
    5.用户协议默认选中,用户点击“隐私协议”或“用户协议”跳转至对应协议页面;
    6.点击“直接登录”跳转至登录弹框;
    7.当用户点击“X”按钮,关闭注册弹框;
    输出内容需要包含用例序号、前置条件、用例标题、用例步骤、用例预期。
    输出格式为表格。
  1. 获取AI输出的测试用例,并核验

2、存在的问题及解决方案

  1. 问题:AI对自然语言的理解有限,且无法联系上下文。
    解决方案:需求文档通过人工提炼功能点。大部分功能分为展示\触发时机、样式、功能逻辑、异常处理几个部分,可以从这个几个方向整理功能点。
  2. 问题:针对迭代的项目和功能,如何输入需求文档?
    解决方案:通过机器学习,让AI了解整个项目。但同时存在隐私泄漏的可能性。或是在需求文档中增加描述。
  3. 问题:AI产出的用例格式并非用例最终格式
    解决方案:将指令更详细,更贴合自己的需求。通过脚本、或人工转换格式。
  4. 问题:AI产出的用例无法思考到文本描述之外的内容
    解决方案:可以通过机器学习,也可以通过人工整理功能点时加入必要功能点。

3、存在风险、疑虑

  1. 让机器学习,伴随而来的就是严重隐私泄漏问题。它越了解公司的项目,那隐私泄漏的也就越多。所有AI也是一个双刃剑,想要利用好AI,首先要处理好这之间的平衡。
  2. 近期存在chatGPT大量封号的消息,想要方便安全的使用并不是那么容易。当然国内也有,到底哪个好用,这个还需要等各大厂的产品正式推出才可以。
  3. 因为使用AI还是需要一些前期的装备,和后续的处理,产出的价值是否能够大于成本这也是需要考虑的问题之一。

此篇文章只是本人的一些思考,可能存在不正确或遗漏的地方。欢迎大家一起讨论或指正我的错误。

————————————————————————————————————————————
本人运营的博客同名公众号【软件测试必备技能】不定期会上传测试相关资料,可点击文章下方二维码,前往领取~
在这里插入图片描述

你可能感兴趣的:(测试用例,人工智能,测试用例,单元测试)