测试自动化的三波浪潮

测试自动化

三波浪潮接踵而来:

第一波

第一个浪潮中充满了一些老式的供应商工具,如WinRunner,Silk Test和QTP。在我看来,这些解决方案开创了这一切,并为未来的测试自动化创新如Selenium奠定了基础。

第二波

Selenium开始了第二波测试自动化,在创建自动化测试时更多地关注开发人员和编程最佳实践。

但是,真相被告知 - 在他们认为没有人在倾听的安静时期 - 你可以听到测试人员窃窃私语与他们对供应商工具所做的相同的诅咒:片状测试和维护使他们疯狂。

目前的热门话题围绕着AI和机器学习。实际上,在最近的一次Google会议上,CEO Sundar Pichai表示:“我们正在从移动优先转向人工智能优先的世界。 ”

这里有七个更新的“AI”工具,我认为这将带我们进入下一个测试自动化阶段 - 第三波浪潮。(另外,请查看 Automation Guild Online会议, 了解我们在AI测试自动化方面的一些非常棒的会议,您还将有机会向本文提到的许多供应商提问

第三波

这里只是我见过的第三波自动化工具中的一小部分。这个软件的主要功能之一就是它们中的许多都是利用机器学习和AI辅助技术。

  • Applitools

  • SauceLabs

  • Testim

  • Sealights

  • Test.AI

  • Mabl

  • ReTest

Applitools

Applitools是我第三次上手的第一个工具之一,这让我开始相信新的测试方式是可能的。

当我第一次听说视觉验证测试,它使用一个复杂的算法来排除应用程序中的潜在错误,而没有明确地调用所有的元素,我认为它必须是BS

然而,在与创始人亚当·卡尔米(Adam Carmi)交谈后,为自己检查Applitools,我成了一个信徒。

我发现真的没有可视化的处理设置,百分比或配置,需要建立与Applitools的视觉测试

该算法是完全适应性的,我只能想象他们将把技术作为AI,机器学习进一步发展。

我最近看到一个Applitools演示,在他们的路线图上,他们计划在现有的机器学习技术基础上增加一些很酷的功能。

可能的AI类型特征:

利用基于ML / AI的自动维护(能够将来自不同页面/浏览器/设备的类似变化组合在一起)

修改他们的比较算法,以便能够辨别哪些变化是有意义的/显著的

能够自动理解哪些更改更可能是错误与期望的更改并优先考虑差异

很多这样的事情在实践中看起来还为时过早,但是看一下路线图会给你一个AI测试工具公司的发展蓝图。

Sauce Labs

当然, Sauce Labs 是基于云计算测试自动化领域的第一批玩家之一,但是他们目前所拥有的所有数据都可以充分利用机器学习,并有一些很好并且独特的见解。

在2017年的SauceCon会议上,首席执行官查尔斯·拉姆齐(Charles Ramsey)展示了一张幻灯片,展示了我们如何从大型机一直到物联网,以及人工智能,机器学习和深度学习等。

查尔斯认为,在测试中,使用已知的模式匹配和不同的AI技术是非常有用的。

这让我想到了Sauce Labs 每天运行超过一百五十次的测试,他们有一个虚拟的宝库数据,可以用来帮助他们的客户成为更好的测试者。

我们绝对可以预见Sauce会在分析中增加更多的智能,这将主动帮助客户改进测试自动化。

Testim

Testim试图利用机器学习来加快编写,执行和最重要的是维护自动化测试。他们的目标是帮助你开始相信你的测试。

Testim专注于减少您的flaky tests和测试维护,他们认为这是大多数组织面临的最重大挑战之一。

Testim联合创始人Oren Rubin在最近的一次TestTalks采访中提到,该公司的主要目标是帮助解放测试自动化与开发人员的专有领域,并使其足够简

单,让团队中的任何人都可以创建。在与Oren交谈之后,我了解到Testim正在实现这一目标。

Sealights

Sealights是一个基于云的平台。我们都知道,开发人员和QA,无论是管理人员还是工程师,现在都非常忙于使用CI和CD的做法,他们频繁发布,没有足够的时间多次测试整个应用程序。

这是Sealights创立的主要原因之一。

用他们的机器学习技术分析你的代码和对它的测试,它可以让你确切地知道你的测试覆盖了什么,什么不是。但是当Sealights说“测试”时,它们不仅仅意味着单元测试; 他们的意思是任何一种测试,从功能,手册,性能,你的名字。

“质量风险”甚至可以提供更令人兴奋的见解,因为它将用户的努力集中在重要的事情上,让他或她知道上一个版本中没有经过测试的文件/方法/一个特定的测试类型(或任何测试类型)。一旦你知道了,你可以很容易地确保未经测试的代码在进行之前不会达到生产,至少是最少的验证。

当我们走向CI / CD时,仪表板变得至关重要。

如果您像大多数公司一样,今天的一切都在您的CI / CD中,但是这些数据通常不可见或不可用于您的团队使用。

Sealights可以轻松创建每个人都能看到的高质量仪表板。因此,对于每一个构建,你将能够理解被测试的是什么,状态和覆盖是什么,以及是否正在改善,减少或有质量缺陷。

Test.AI

Test.AI被认为是一个将人脑添加到Selenium和Appium的工具。它是由Google如何测试软件的合着者,Appdiff的创始人Jason Arbon 创建的。测试是以类似于Cucumber的BDD语法的简单格式定义的,所以它不需要代码,也不需要混乱元素标识符。

AI在任何应用程序中动态地识别屏幕和元素,并自动驱动您的应用程序执行测试用例。

足够聪明的知道,如果某个元素发生了变化,就可以随时调整和识别,而不必进行任何手动更改。这个工具还处于测试阶段,但是Jason被我偷偷摸摸了一下。

我很高兴能够更多地了解它以及所有这些测试工具的潜力。

MABL

Mabl与Test.AI类似。Mabl由一群前Google雇员开始,针对您的应用程序或网站进行功能测试。在Mabl术语中,您可以“训练”测试来与应用程序进行交互。录制完成后,训练有素的测试将在预定的时间内运行并提醒您。

他们的网站做出了三个主要承诺:

消除flaky tests- 与其他基于AI的测试自动化工具一样,Mabl可自动检测应用程序的元素是否已更改,并动态更新测试以补偿这些更改。

Mabl可以连续比较测试结果和测试历史,以快速检测变化和回归,从而获得更稳定的版本。

Mabl可帮助快速识别和发现问题,在您影响客户之前提醒您可能产生的影响。

使用人工智能猴子来自动测试您的应用程序。ReTest就是这样做的。

ReTest

ReTest声称与其他测试自动化工具不同,因为它是专门为测试人员设计的。

它也来源于人工智能研究项目,所以它试图将人工智能智能融入到他们的工具中,从而有效地消除了用户拥有任何编程技能的需求。

它们像这个列表上的其他工具一样,也避免了在创建脚本时选择元素ID来处理。重新测试也会自动处理等待时间。

如果你想尝试ReTest,他们提供了一个很好的一步一步的演示文章。

AddOn

Endtest

GhostInspector

TestCraft

人工智能/机器学习只是炒作?

显然,人工智能/机器学习是当前测试行业使用的最新流行词。但是这是真的,还是只是炒作?

只有时间才能确定第三波是否会最终实现所有人都可靠,易于维护的测试自动化的承诺。

让我知道你的经验是什么与这些或任何其他工具,你认为是AI测试自动化的第三波的一部分。


另外,请查看Automation Guild Online会议,了解AI测试自动化方面的一些非常棒的会议。您还将有机会向本文中提到的许多供应商提问


猜你喜欢

转载自blog.csdn.net/itest_2016/article/details/79088940
今日推荐