快捷搜索:  as  test  1111  test aNd 8=8  test++aNd+8=8  as++aNd+8=8  as aNd 8=8

188金宝搏亚洲体育与真人_酒文化网进入



人工智能不停科技最高档的地域,将法度榜样代码、数据阐发进行自动可视化,依托软件和硬件一体去仿照人类一些或繁琐或简单的事情。

此文也是关于人工智能技巧的探究,主题为:若何将人工智能技巧利用到自动化测试上?

在测试中加入AI,自动测试也变为可能。将无聊、重复的事情交给AI,这样测试职员就可以用更多光阴做其他测试方面的思虑。

布道师、Applitools的高档架构师Gil Tayar为我们先容了若何将AI技巧利用到自动化测试的内容。

InfoQ采访了Tayar,咨询了他有关现如今测试面临的主要寻衅,自动化测试分为哪六个层次,软件财产在这六个层次中取得了什么样的进展,若何实现自动可188金宝搏亚洲体育与真人视化测试,我们在测试中若何利用机械进修技巧,188金宝搏亚洲体育与真人以及AI给测试职员的事情会带来什么影响。

现如今测试面临的主要寻衅是什么?

Tayar:很遗憾的是,测试还没有成为主流。我还记得在80年代、90年代的时刻,全部行业都没有把QA这个职业和手动测试软件当一回事。不光是说没有自动化测试,而是根本没有测试!好在现在期间已经不一样了,在交付产品之前测试职员都邑按期测试软件,而且很多人开始应用自动化测试。

但在如今的“互联网期间”,这还不敷。因为应用了敏捷措施,我们必要支配得越来越快,这着实是一件好事。由于越来越多开拓职员会自己测试自己的软件,而不是慢悠悠地等待专门的测试职员来测试他们的软件。

然则,开拓职员测试自己的软件还没有成为主流。大年夜多半开拓职员不会自己写测试来反省代码,他们选择手动测试,或者等待测试职员进行测试,包管他们的软件正常运作。

这恰是测试面临的主要寻衅,怎么闪开拓职员编写自己的测试。而不幸的是,AI在这方面起不到什么感化,AI只是测试时应用的对象,但假如你自己不测试,AI就没用了。事实便是这样,AI从现在到未来都只能作为测试的帮助,假如你自己不想测试,AI弗成能自动帮你完成测试。

开拓职员必须要有测试的设法主见,这便是我们在测试方面面临的主要寻衅。

自动化测试的六个层次。它们分手是什么?

Tayar:这个观点滥觞于自动驾驶的五个层次。它们描述了AI若何赞助我们进行测试。

完全没有自动,你必要自己写测试!

驾驶帮助:AI可以查看到页面,赞助你写出断言。你照样要自己写“驱动”利用法度榜样的代码,然则AI可以反省页面,并确保页面中的期望值是精确的。

部分自动化:虽然能分辨实际页面和期望值的差别这一点已经很好了188金宝搏亚洲体育与真人,然则第二层次的AI必要有更深层的理解。比如说,假如所有页面都有相同的变化,AI必要熟识到这是相同的页面,并向我们展示出这些变化。进一步来说,AI必要查看页面的结构和内容,将每个变化分类为内容变化或是结构变化。假如我们要测试相应式web网站,这会异常有赞助,纵然结构有细微变化,内容也应该是相同的。这是Applitools Eyes这样的对象所处的层次。

前提自动化:在第二层,软件中检测的问题和变化仍旧必要人来检察。第二层的AI可以赞助我们阐发变化,但不能仅仅经由过程查看页面判断页面是否精确,必要和期望值进行比较才能判断。然则第三层的AI可以做到这一方面,以致更多其他方面,由于它会应用到机械进修的技巧。比如说,第三层的AI可以从可视化角度查看页面,根据标准设计规则,例如对齐、空格、颜色和字体应用以及结构规则,判断设计是否过关。AI也能查看页面的内容,基于相同页面之前的视图,在没有人工干预的环境下,判断内容是否合理。我们还不能达到这一层次,但我们正在向这个方面努力。

高度自动化:直到现在,所有AI都只是在自动化地进行反省。人类只管应用自动化软件,照样必要手动启动测试,必要点击链接,而第四层的AI可以自动启动测试本身。AI将经由过程察看启动利用法度榜样的真实用户的行径,理解若何自己启动测试。这层的AI可以编写测试,可以经由过程反省点来测试页面。但这不是终点,它还需察看人的行径,有时必要遵从测试职员的指令。

完全自动化:我必须承认,这个层次有点可怕。这个层次的AI可以和产品经理“交流”,理解产品的标准,自己写测试,不必要人的赞助。

软件财产在188金宝搏亚洲体育与真人这六个层次中取得了什么样的进展?

Tayar:大年夜多半公司肯定在第二层,目标向第三层努力。我信托要达到第四层必要一段光阴,但我们终有一天是可以达到的。至于是否能达到第五层,我异常狐疑,但未来弗成估量!(原文中引用了古犹太人损坏第二圣殿的典故,比喻未来弗成估量。)

若何实现自动可视化测试?

Tayar:其其实几年前,纵然是开拓职员都不能自动进行可视化测试,更不要说应用AI了!因为基于像素的算法误报率过高,截牟利用法度榜样,根据预期进行反省是弗成能的。

然则跟着谋略机视觉算法和今众人工智能(AI)技巧的利用的成长,编写可视化测试已经成为现实。人们发明测试中缺少可视化测试。因为可视化测试的存在,现在我们可以测试到软件的方方面面。

那我们若何应用AI技巧避免误报,AI是否能比纯真对照像素的算法做得更好?谜底不仅仅扳连到一个技巧,必要将不合算法结合在一路,一个算法办理一个准确度的问题,经由过程决策树结合不合算法的结果(无意偶尔候将一个算法的结果利用到另一个算法中)来确定着末的结果。但要应用什么算法呢?瓜分算法便是一个例子,这个算法试图确定图片的翰墨和图像部分。这不是一个简单的问题,由于我们必要弄清,神色符号着实是翰墨,而图像中的文本是图像的一部分,并不是新的翰墨。这便是深度进修的魅力所在,因为我们代码中应用了深度进修技巧,我们的准确率从88%前进到了96%。

以是要做到自动视觉化测试,你必要应用今世的数据化测试对象,比如Applitools Eyes。这些对象有一些简单的高档AI技巧,是以你不必要理解并实现。看看这个例子:

在这个例子中,我们验证了一个博客利用法度榜样。在老例的、非视觉化、非AI的测试里面,我们必要验证主页和特定的博文,对付页面中的每个元素进行几十次反省(纵然这样我们照样会漏掉一些)。然则在这个例子里面,我们只是“checkWindow”,截图上传到办事器,办事器应用AI技巧查验截图。

我不停感觉,测试是为开拓历程办事的,它避免了在代码中添加新功能的烦恼,更紧张的是,避免了代码重构的烦恼。但为什么这只能运用在营业逻辑上?为什么我们的可视化代码(在CSS、HTML和JS文件中)不能测试,我们还要再为它们担忧?AI可以赞助我们实现这一目标。

Appraise是别的一款可以用于视觉化测试的对象。起初,InfoQ采访了Gojko Adzic有关应用Appraise进行自动视觉化测试的内容:

Adzic:Appraise采纳实例化需求的要领,但将其运用于视觉化内容。我们采纳详细的例子,让其从自动化层面创建可履行的实例化需求,用headless Chrome截屏,与预期的结果进行比较。和通俗的实例化需求对象(期望结果和实际结果不合就觉得是差错的)不一样,Appraise采纳确证测试措施。它将所有的不合展现给人来评估,让人抉择区别是否精确,假如是的话就进行确认。

我们在测试中若何运用机械进修?

Tayar:我近来看到了一个讲座,讲的是若何应用机械进修测试Candy Crush游戏。因为Candy Crush是高随机的游戏,任何环境都可能发生,标准的测试技巧很188金宝搏亚洲体育与真人难实现。King的目标是想要懂得是否这局游戏可以成功完成,要完成有多繁杂。他们一开始应用蛮力法考试测验所有路径,谋略此中有若干可以成功。这个措施确凿有用,但必要花好几个小时,由于组合可能太多了(应用去除无效路径组合的算法)。要办理这个问题,他们应用了Genetic Algorithms,应用一些最基础的算法(如只应用粉色糖果,不停打消障碍等),在一局游戏中进行试验。之后他们应用最佳算法(基于若何胜利完成一局游戏的算法),再结合两者,“创建”一个新的算法。赓续重复,着末获得一个最佳算法。

再举一个例子,卷积神经收集赞助我们阐发图像,并从中提取语义信息。在天生图像的利用法度榜样中是异常实用的。可视化测试对象应用它来理解页面的不合部分,以及互相之间的联系,正如我上文所述一样提取不合的翰墨和图像块。

AI会对测试职员的事情孕育发生什么影响?

Tayar:讨教疲塌时机给农夷易近的事情带来什么影响?当然是伟大年夜的影响!农夷易近不再必要做逝世板、乏味的体力劳动事情,只要交给机械来做就可以了。我信托AI也会给测试职员带来相同的影响。乏味、重复的事情交给AI,测试职员就可以用更多光阴来思虑。

大年夜多半测试职员已经习气思虑测试相关的方方面面:思虑产品,思虑怎么测试,思虑界限环境等等,他们也必要对象来完成无聊、重复的事情。一些测试职员必要学会怎么思虑更高层次的问题,确凿会有一部分测试职员无法适应,但我信托他们只是少数。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

您可能还会对下面的文章感兴趣: