【51CTO.com快译】通常,测试人员在初次听到“无代码自动化测试”的概念时,往往会心生疑惑,尤其是对于那些习惯了使用同一套代码,进行应用程序开发和创建测试用例的开发人员和测试人员而言,更是如此。他们会觉得有那么多的工具和信息需要解析,入门此类测试似乎比较困难。不过,“无代码自动化测试”实际上只是知难行易罢了。在本文中,我将向您介绍可以协助实现该目标的三种优秀实践,并探索四种最受支持的无代码自动化测试工具。
最佳实践
入门通常是开启一项新事物中最困难的部分。幸运的是,我们并不是第一个“吃螃蟹的人”,因此,该领域中有着无数开发与测试人员,已为我们总结了各种优秀的实践。在此,我向您推荐如下三条:
- 从小处入手,不断进阶:由于无代码自动化测试通常处于系统或应用级别上,因此我们往往会需要创建复杂的、针对整体应用的测试套件。以往经验告诉我们,不必强求一开始便能达到100%的测试覆盖率。相反,我们应该更加专注于创建少量的测试用例,并真正了解所选工具的运行原理。常言道,工欲善其事,必先利其器。我们与其盲目地开始创建数个测试用例,不如花些时间熟悉手头的测试工具。
- 着重关注基本用例:常言说得好,贪多嚼不烂。我们与其去开发和测试每一个用例,不如优先考虑某些重点用例。例如,我们可以先从如下用例入手:
- 典型用户在使用过程中会涉及到的哪些最常见的使用场景
- 各种最关键的用例(如,登录或转账交易)
- 大多数用户都会用到的用例(如,退出或注册订阅)
- 关注用户的使用流程:我们在做测试的时候,要尽量避免从应用构建者的角度出发,而应当从用户的角度去全面试用。例如,在测试登录表单的时候,重点关注那些用户可见的字段、以及界面上的登录按钮。毕竟这些功能与服务,会经常与用户产生交互。我们应当通过深入测试,保证此类流程的顺利执行,再去考虑对其他增值服务和非常用功能的测试。
工具
常言道,磨刀不误砍柴工。我们需要在开展无代码自动化测试之前,找到合适的工具。与许多常规软件中的其他部分一样,无代码自动化测试目前已拥有一个成熟的生态系统。不过,我们可以选用的工具可谓良莠不齐。虽然目前尚无一款可以完美地适用所有的需求,但是它们中的确有些能够在特定的场景中发挥不俗的作用。下面,我将为您列举出四款最流行的无代码自动化测试工具,通过简单介绍他们的关键功能,以进行相互比较。如果您想了解更多有关低代码开发的趋势,请参考报告。
Katalon Studio
作为一款顶级的无代码测试工具,Katalon Studio既能够提供图形化用户界面(GUI),又允许开发人员和测试人员创建各种新的测试用例,还可以为验证Web、移动、简单对象访问协议(SOAP)、表征状态转移(REST)、应用程序编程接口(API)、以及各种桌面应用,提供开箱即用(out-of-the-box)的支持。此外,它可以将测试用例存储为特定的、以.tc为扩展名的、可扩展标记语言(XML)文件。据此,我们可以确保使用相同代码版本控制工具(如,Git),来管理应用程序的测试用例。
关键点:
- 针对Web、移动、API和桌面应用,创建自动化测试的内置工具
- 可基于桌面的工具
- 提供熟悉的、类似Eclipse的界面
- 可使用GUI创建测试,并将它们保存为基于文本的文件
- 其用户包括三星、丰田和西门子等世界级知名公司
- 十分强大灵活、且能够创建特定的测试
图 1:Katalon Studio
Perfecto
与Katalon Studio不同,Perfecto主要专注于Web和移动应用的测试。因此,对于那些主要从事REST API开发的人员而言,该工具可能不易上手。但是对于那些从事创建基于Web和移动应用业务的人员来说,Perfecto为他们提供了集中式的、与设计相关的各种专业功能、报告和仪表板。此外,Perfecto也支持在真实和虚拟的硬件上,测试各种移动应用。
关键点:
- 专注于Web和移动的开发
- 提供基于Web的图形化用户界面
- 为具有持续集成(CI)经验的用户提供了熟悉的仪表板
- 能够针对不同浏览器和移动设备的组合开展测试
- 允许在真实的移动硬件上进行测试
- 其用户包括福特、IBM、Salesforce和Verizon等超过半数的财富500强企业
图 2:Perfecto
CloudQA
CloudQA通过一种简单的方法,来开展无代码自动化测试。CloudQA可以建立一个全面的设计环境,可供用户根据待测应用的实际需求,决定测试所用到的设备、浏览器、以及那些有待传递给应用的详细信息。例如,CloudQA可以被作为Chrome的扩展程序,去按需浏览和导航Web应用,并在完成操作后做出各种断言(assertions)。这是一种近似于教科书式的无代码自动化测试方法,可以让新手测试人员更加容易地创建出新的测试用例,并能快速地构建出大量的测试套件。
关键点:
- 简单、直接、可快速创建大量的测试用例
- 既能够使用Chrome扩展程序对测试进行记录,又可以通过Web应用去查看和编辑已记录的测试
- 可以操作完成后,对那些期望出现内容做出各种断言
- 可能难以创建出过于详细和复杂的测试用例
图 3:CloudQA
Ranorex
Ranorex将许多同类工具的优点都整合到了一个单一的自动化测试工具上。虽然它可能没有Perfecto那样对移动应用提供的广泛支持,或像CloudQA那样的简单性,但是Ranorex提供了一种简单的运行机制,即:通过提供可扩展的工具包,来创建复杂的测试用例。同时,Ranorex也可以将测试用例创建为更简单的聚合步骤。例如,用户通过单击特定的按钮,或提交表单,即可实现复用性。在实际使用中,测试人员还会经常用到Ranorex能够与其工具套件相集成的特性。
关键点:
- 能够与诸如:Git、Jira、Visual Studio Code、以及Jenkins等常见的开发工具相集成
- 允许用户对测试用例进行源头控制
- 既提供了简单的入门级界面,又允许专业用户按需添加各种复杂的细节
- 支持桌面、Web、以及移动应用等测试
图 4:Ranorex
图片来自Ranorex的官网
小结
如今,无代码自动化测试已逐渐在测试领域流行开来。如上文所述,您可以通过从小处入手,配合使用上述各种优秀实践,以及恰当的无代码工具,化繁为简,逐步建立出一个满足用户体验需求的直接测试用例与套件。
原文标题:No-Code Automated Testing: Best Practices and Tools,作者:Justin Albano
t-practices-tools
【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】