人工智能 自动化测试

敏捷方法论的发展迫使企业进行创新并以闪电般的速度交付。 在交付周期时间减少的同时,提供积极的用户体验并保持竞争优势所需的技术复杂性也在增加,而我们引入引人注目的创新的速度也在增加。

为了满足持续集成和交付的需求,我们转向了以自动化为后盾的连续测试,但是当这些趋势持续并且差距扩大时,我们如何进行测试? 由于这是数字转型的时代,我们需要数字测试来满足由AI,IoT,机器人技术和量子计算驱动的未来质量需求。

如果我们观察一下测试实践随时间的变化,那么直到2018年,它都集中在CI / CD,可伸缩性和连续测试上。


现在,测试的期望更多地是关于实时风险评估。 为了满足当前场景下的测试期望,人工智能(AI)可以模仿人类的智能行为进行机器学习和预测分析,可以帮助我们实现目标。

超越连续测试

如果我们分析自敏捷出现以来的旅程,它已经完全改变了交付应用程序的方式。 在敏捷开发之前,曾经有一个月甚至有时超过一个月的发布时间。 在敏捷方面,公司会进行两周的冲刺,并在两周内发布。 为此,Continuous Testing出现了,其中开发了用于回归和健全性测试的自动化服。 这支持快速交货和快速的测试周期。

现在,随着世界朝着数字化转型的方向发展,预测市场需求并建立具有可预测性和可扩展性以适应未来趋势的系统的压力已无可避免。 测试将需要额外的帮助以加快该过程。 人工智能模仿人类的智能行为来进行机器学习和预测分析,可以帮助我们实现目标。

什么是人工智能?

首先让我们了解人工智能的含义。 Forrester将AI定义为-

“通过编码,业务规则和越来越多的自学功能构建的系统,该系统能够补充人类的认知和活动,并与人类自然互动,而且能够理解环境,解决人类问题并执行人类任务。

简而言之,人工智能使机器能够通过数据学习,从而赋予他们做出决策的能力。 这些算法不是为解决特定问题而编写的,而是以一种使系统能够基于数据做出决策的方式进行设计的。

如何在软件测试中使用AI?

使用AI和机器学习来自动化-

a)单元测试–单元测试对于确保构建稳定且可测试非常重要。 借助RPA等基于AI的单元测试工具,开发人员可以减少繁琐的测试用例并维护单元测试。

b)API测试 -API测试通过深入了解问题的根本原因来节省时间和精力。 UI测试的问题在于,由于UI不断变化,它们不再可靠,而API测试可以使应用程序更深入地了解问题,并直接找到问题的根源,最终使应用程序更加健壮。

有许多工具正在使用人工智能,通过将手动UI测试转换为自动API测试,降低采用API测试所需的技术技能并帮助组织制定可扩展的全面API测试策略,从而帮助降低API测试的复杂性。

c)UI测试-自动化的第一步是将手动UI测试转换为自动化测试。 有一些工具可以利用AI在多个平台和浏览器上运行测试用例,还可以从功能流程中学习,从而减少维护工作并使测试更加可靠。

以下是一些最受欢迎的工具-

由AI驱动的测试工具-有多种使用AI的测试工具,尽管没有充分利用AI的优势,但它们仍然能够为测试人员提供很多帮助-

1. Applitools-这是一款由AI驱动的视觉测试和监视工具,可以在不同的浏览器和平台上运行测试。 它使用AI来识别UI中有意义的更改,并将它们识别为错误/所需的更改。

它还利用基于ML / AI的自动维护功能(能够将来自不同页面/浏览器/设备的相似更改分组在一起)

2. Testim-它利用机器学习进入自动化最关键的部分,即执行和维护测试。

3. Sealights- Sealights使用AI和机器学习来分析代码并运行覆盖受影响区域的测试。 它可以是任何类型的测试单元,功能,性能,手册等。

它提供了有用的见解“质量风险”,让用户准确了解上次构建中未通过特定测试类型(或任何其他测试类型)更改的文件/方法/行,从而使用户将精力集中在重要的事情上。测试类型)。

4. Test.AI- Test.AI正在构建为一种工具,它将为Selenium和Appium添加AI大脑。 它是由Jason Arbon创建的,Jason Arbon是Google测试软件的合著者和Appdiff的创始人。 测试以类似于Cucumber的BDD语法的简单格式定义,因此它不需要代码,也不需要弄乱元素标识符。

  • AI就像真实的人一样,识别应用程序中的屏幕和元素。
  • AI执行用户场景-准备就绪即可按需测试
  • AI可以识别元素,因此即使情况发生变化,您的测试也不会中断。

5. MABL-与其他基于AI的测试自动化工具一样,MABL可以自动检测您的应用程序元素是否已更改,并动态更新测试以补偿这些更改。 您只需要显示必须进行测试的工作流程,然后MABL完成其余工作。

6.重新测试-重新测试传播了一种创新的测试方法,该方法是“智能”猴子测试和“差异测试”的组合,实际上比常规测试更像GUI版本管理。

此工具进行猴子测试,从而使猴子(称为Surili)具有人工智能,并且可以通过捕获用户动作来由用户进行训练。

7. ReportPortal-顾名思义, ReportPortal是一款由AI驱动的自动化工具,其重点更多地放在报告分析和管理上。 根据其网站-

  1. 一站式管理所有自动化结果和报告
  2. 使自动化结果分析具有可行性和协作性
  3. 通过缺陷管理建立快速可追溯性
  4. 加快常规结果分析
  5. 可视化指标和分析
  6. 一起做出更明智的决策

8. Functionlize- Functionlize提供了一个无缝自动化的整体解决方案,而在AI的帮助下,维护工作量几乎为零。 它的AEA工具查找并修复了损坏的测试脚本,从而消除了手动维护。

Functionize使用机器学习进行功能测试,就其功能而言,它与市场上的其他工具非常相似,例如能够快速创建测试(无需脚本),在几分钟内执行多个测试以及进行深入分析。

通过在功能化测试云中维护测试套件,它还提供了可伸缩性。

人工智能在测试中的挑战

机器学习过程完全取决于数据,因此导致数据集的数量很大。 AI模型测试场景应具备识别和消除人为偏差的能力,而人为偏差通常成为训练和测试数据集的一部分。

缺乏对AI和机器学习过程的认识,并且测试人员需要适当的培训。

2019年及以后的AI

随着我们从线性瀑布模型发展到敏捷,未来将关乎AI和机器学习技术。 作为一名测试人员,我们需要先行一步,开始深入研究AI的各个方面,动手使用AI驱动的工具并加以利用。

无论是聊天机器人还是亚马逊的Alexa,人工智能已经在很多地方铺平了道路,我们需要非常热衷于如何将设备用于测试用例以测试此类应用程序并快速交付。

随着基于AI的测试工具需求的增长,测试人员可能最早需要培训。 具有AI及其应用程序的高级知识将非常有帮助。

翻译自: https://www.javacodegeeks.com/2019/04/testing-third-wave-automation.html

人工智能 自动化测试

人工智能 自动化测试_测试中的AI:第三波自动化相关推荐

  1. 测者的测试技术手册:AI的自动化单元测试

    测者的测试技术手册:AI的自动化单元测试 谈新技术:AI的自动化单元测试 转载于:https://www.cnblogs.com/mrtester/p/10107939.html

  2. 软件测试mysql常用语句_测试中常用到的SQL语句(Oracle)

    在测试过程中,可能会进入到数据库中检查数据. 下面列举一些经常用到的SQL语句. (1)删除记录(delete与truncate) 语法:delete from  表名 where 条件 trunca ...

  3. 人工智能时代:软件中的人工智能将如何改变程序员的角色

    软件程序员在每个企业中总是有很高的需求,无论行业或目标受众如何.这类专业人员设计和运行软件,使企业能够通过他们构建的应用程序来接触和服务客户. 但最近,软件程序员正生活在被颠覆性技术取代的威胁之下! ...

  4. 人工智能测试是什么意思_测试工程师必须懂这些

    阿里妹导读:近几年人工智能.机器学习等词漫天遍地,似乎有一种无AI,无研发,无AI,无测试的感觉.有人说:不带上"智能"二字,都不好意思说自己是创新.我们先暂且不评论对错,只探讨这 ...

  5. 测试beta测试_重新想象不断变化的自动化世界中的Beta测试

    测试beta测试 从根本上讲,beta测试是对真实用户在真实环境中执行的产品的测试. 这种测试类型有很多名称-用户接受测试(UAT),客户接受测试(CAT),客户确认和现场测试(在欧洲很常见),但是基 ...

  6. 测试工程师不懂AI,还有未来吗?

    阿里妹导读:近几年人工智能.机器学习等词漫天遍地,似乎有一种无AI,无研发,无AI,无测试的感觉.有人说:不带上"智能"二字,都不好意思说自己是创新.我们先暂且不评论对错,只探讨这 ...

  7. 在测试中实施人工智能

    人工智能实施如何改进软件测试过程? 软件测试中的人工智能是自动化 QA 的自然演变.AI 测试自动化比模拟手动工作更进一步."机器"还首先决定何时以及如何运行测试. 创新不止于此. ...

  8. 生活中的观察者偏见例子_消除人工智能第2部分中的偏见,解决性别和种族偏见...

    生活中的观察者偏见例子 Chatbots that become racist in less than a day, facial technology that fails to recogniz ...

  9. 人工智能在软件开发和测试中的作用

    根据Gartner的说法,人工智能将在所有技术领域无所不在,并将成功地在2020年成为CIO最重要的投资重点之一.根据市场研究公司的数据,2019年全球人工智能的范围是北美约为63.6亿美元. 像亚马 ...

最新文章

  1. mysql分页关键词_数据库分页关键字
  2. kafka原理_Kafka动态配置实现原理解析
  3. Django model 中的 class Meta 详解
  4. 排序算法-06堆排序(python实现)
  5. asp.net 调用本地php,.NET_Asp.net获取服务器指定文件夹目录文件并提供下载的方法,本文实例讲述了Asp.net获取服务 - phpStudy...
  6. NOIP2005普及组第3题 采药 (背包问题)
  7. Python凭啥这么受欢迎?
  8. EmWin 接触---基础函数
  9. VB实现指示窗口中拖动方框的程序
  10. Java类加载原理解析(转)
  11. 来自联通302的问候
  12. 不同调制方式性能优劣指标
  13. 推荐个 Java 开源商城项目,这个是真的好!
  14. 算法竞赛入门经典 排列
  15. Java调用WebService接口的四种方式
  16. 云计算之云计算和虚拟化的区别
  17. 真励志!从月薪2300深圳流水线女工,逆袭为年薪80万谷歌工程师,又因疫情失业:我绝不轻易认输...
  18. 京东 京麦,京东商家后台自动登录,滑块验证selenium进入到from表单
  19. 科猫网项目总结(基于SSM框架)
  20. js 获取汉字首拼和全拼和拼音

热门文章

  1. 零死角玩转stm32中级篇2-IIC总线
  2. 冒泡算法java代码实现
  3. 数据仓库建设——主题和主题域的划分
  4. 泽塔云荣膺“中国高科技高成长50强”,成唯一上榜超融合企业
  5. 什么是框架,框架的作用是什么?
  6. Mysql Oracle Sql server 三种数据库默认端口
  7. 大数据中技术的定义和特点
  8. 【根文件系统 】开发板通过nfs挂载ubuntu上的根文件系统
  9. 嵌入式linux烧录文件格式,嵌入式文件系统镜像制作及烧写
  10. win10关闭自动更新(针对已经关闭windows update项,但系统仍自动更新的问题)