如何利用人工智能实现软件测试的左移

在本文中,我们(作者)探讨了如何利用人工智能的力量,在软件测试领域实现左移。

用AI驱动的创新变革测试领域

测试在确保应用程序质量和可靠性方面发挥着至关重要的作用。然而,随着测试要求变得越来越复杂,人工测试变得既耗时又容易出错。许多组织依赖于自动化脚本,但维护这些脚本可能是一项艰巨的任务,导致投资回报率(ROI)较低,这一挑战在全球企业中普遍存在

图片

如上图中总结:

  • 准备工作

    传统上,由于自动化工具至今仍缺乏上下文和场景意识,因此这一阶段从未实现自动化。

  • 执行

    市场上的许多工具都允许记录和重新运行脚本。这一阶段已大量实现自动化。

  • 报告

    测试报告与执行相结合。市场上有许多用于测试报告的 00B 和 be spoke 解决方案。

我所在的公司,认识到人工智能工具和服务的激增,抓住机遇,开发出了人工智能测试 BOT。

这款先进的机器人利用机器学习和自动化的力量来优化测试流程、提高效率并提升整体软件质量。

左移测试效率

左移是测试领域的一个术语,指在软件开发生命周期(SDLC)中提前进行测试。

图片

机器人快速生成测试用例的能力使其更接近于在开发人员完成工作时就绪。这是我们向 "左 "移动测试的第一步。

让我们来看看人工智能测试机器人是如何将测试流程左移的。

1. 与服务无缝集成:人工智能机器人简化了测试流程。测试人员只需提供服务的卷曲,无需复杂的配置或设置。

2. 内部测试生成模型:机器人结合内部测试生成模型,自动生成特征文件和测试脚本。通过利用机器学习算法和以往的测试模式,该模型可生成可靠、有效的测试方案。这样就无需手动创建测试脚本,为测试人员节省了宝贵的时间和精力。

3. 即时执行测试脚本:测试脚本生成后,我们的机器人执行引擎可立即执行。测试人员可以毫不费力地触发执行过程,迅速验证服务的功能。这种实时执行能力缩短了软件发布的上市时间。

4. 动态提示管理:在内部测试生成模型难以生成所需测试脚本的情况下,我们的机器人集成了提示管理器。具有挑战性的卷曲会被发送到提示管理器,提示管理器会将它们以合适的格式准备好,供GPT3.5使用。

5. 用GPT生成测试脚本:利用GPT3.5先进的自然语言处理能力,机器人与模型互动,生成缺失的测试脚本。

6. 持续学习和改进:我们的智能测试机器人拥有从执行结果中学习的独特能力。成功执行后,机器人会捕捉响应并将其反馈给内部测试生成模型。这种反馈循环可实现持续改进,提高模型的准确性,并随着时间的推移生成更精确的测试脚本。机器人的自学机制可在每次迭代中增强测试能力。 

技术爱好者的解决方案:

下面是人工智能机器人内部运作的详细示意图,随后是工作流程的逐步说明。

图片

人工智能测试 BOT 解决方案图

a. 合约配置:API测试机器人首先要配置API合约,指定端点、请求方法、标头、参数和预期响应。

b. 提示生成:根据配置的API契约,机器人会生成提示,捕捉所需测试用例的本质。这些提示包含 API 端点、请求方法和预期响应等重要信息。

c. GPT集成:生成的提示信息将传递给生成式预训练转换器(GPT)等语言模型。GPT 利用自然语言处理技术生成行为驱动开发(BDD)特征文件。

d. BDD特征生成:使用提示信息,API 测试机器人动态创建 BDD 特征文件,描述 API 的预期行为。这些文件包括场景、步骤和断言。

e. 测试执行:生成 BDD 特征文件后,可使用 BDD 测试框架(如 Cucumber)执行这些文件。功能文件可作为测试规范,实现自动测试执行。

释放自动化测试用例生成的力量

虽然API测试机器人在生成测试用例方面提供了重要帮助,但验证和审查生成的 BDD 特征文件的准确性和有效性至关重要。人工验证可确保生成的文件符合预期的测试范围和业务需求。

然而,每一次迭代,API测试机器人都会变得更智能、更能干。随着我们更频繁地使用机器人,上述注意事项将变得多余。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/91250.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

gcc/linux下的c++异常实现

概述 本文不一定具有很好的说教性,仅作为自我学习的笔记。不妨可参阅国外大神博文C exceptions under the hood链接中包含了大量的例子。 偶有在对ELF做分析的时候看到如下图一些注释,部分关键字看不懂,比如什么FDE, unwind , __gxx_perso…

three.js(十):线性几何体

线性几何体 WireframeGeometry 网格几何体EdgesGeometry 边缘几何体 WireframeGeometry 网格几何体 WireframeGeometry( geometry : BufferGeometry ) geometry — 任意几何体对象。 const geometry new SphereGeometry(); const wireframe new WireframeGeometry(geometr…

mac清理磁盘空间软件有哪些 mac清理磁盘空间怎么清理

随着时间的推移,Mac电脑上的文件会越来越多,很快就会占满磁盘空间。这时候,我们需要一个好的Mac清理磁盘空间软件来释放空间,保持电脑的良好性能。那么,mac清理磁盘空间软件有哪些呢?接下来,我将…

物联网闸道器开发整合嵌入式套件加速物联网创新

物联网闸道器开发整合套件,以可靠的物联网软体平台与开放式闸道器整合技术,协助加速物联网创新。整组套件包括软硬件整合的系统(Intel Celeron J1900平台与Windows 7 Embedded)、物联网软体平台服务(WISE-PaaS)、软体开发套件和技术支援服务以及Microsof…

【Centos8_配置单节点伪分布式Spark环境】

安装centos8 jdk部署伪分布式spark环境 安装Centos8 环境下的JDK 下载jdk linux版本 下载链接: jdk-8u381-linux-x64.tar.gz 将该文件上传到Centos8 主机 部署配置jdk(java8) # 解压到指定路径 [lhangtigerkeen Downloads]$ sudo tar …

vant2 van-calendar组件增加清除按钮和确定按钮

利用自定义插槽增加一个清除按钮 <van-calendar ref"fTime1" select"selectTimePicker" confirm"changeTimePicker" :default-date"null" :show-confirm"false" v-model"timePickerShow" type"range&quo…

执行公开网数据采集-技术人员撤退

首先逼逼&#xff0c;此贴仅为秀肌肉&#xff0c;技术人员想学习的话可以绕道了 打开控制台&#xff0c;看cookie&#xff0c;ST&#xff0c;某数 第一个请求412&#xff0c;看VM 然后就是替换js&#xff0c;hook&#xff0c;之类的&#xff0c;扣代码流程&#xff0c;此处省…

虚拟化技术原理

计算虚拟化 介绍 把物理主机上物理资源&#xff08;CPU&#xff0c;内存&#xff0c;IO外设&#xff09;&#xff0c;通过虚拟化层抽象成超量、等量的逻辑资源&#xff08;虚拟CPU&#xff0c;虚拟内存&#xff0c;虚拟IO设备&#xff09;&#xff0c;然后重新组合形成新的虚…

C++信息学奥赛1179:奖学金

#include<bits/stdc.h> using namespace std; int main(){int n;cin>>n; // 输入整数 n&#xff0c;表示数组的大小int id[n], arr[n], brr[n], crr[n]; // 创建大小为 n 的整型数组 id, arr, brr, crrfor(int i0;i<n;i) {id[i] i1; // 初始化 id 数组为 1,2,3…

软考:中级软件设计师:信息系统的安全属性,对称加密和非对称加密,信息摘要,数字签名技术,数字信封与PGP

软考&#xff1a;中级软件设计师:信息系统的安全属性 提示&#xff1a;系列被面试官问的问题&#xff0c;我自己当时不会&#xff0c;所以下来自己复盘一下&#xff0c;认真学习和总结&#xff0c;以应对未来更多的可能性 关于互联网大厂的笔试面试&#xff0c;都是需要细心准…

C语言_分支和循环语句(3)

文章目录 前言一、猜数字游戏1.1.电脑随机生成一个数&#xff08;1~100&#xff09;&#xff1b;1.2.猜数字&#xff1a;1.3.玩完一把不过瘾&#xff0c;可以继续玩&#xff0c;不用退出程序。1.4.rand 和 srand 之间的联系5.猜数字游戏源码 二、go to 语句2.1.例如&#xff1a…

ELK安装、部署、调试(三)zookeeper安装,配置

1.准备 java安装&#xff0c;系统自带即可 2.下载zookeeper zookeeper.apache.org上可以下载 tar -zxvf apache-zookeeper-3.7.1-bin.tar.gz -C /usr/local mv apache-zookeeper-3.7.1-bin zookeeper 3.配置zookeeper mv zoo_sample.cfg zoo.cfg /usr/local/zookeeper/con…