Katalon Studio 与基于Selenium的开源框架比
官方文档
Katalon Studio是一款利用Selenium核心引擎的测试自动化解决方案。
虽然它使用了几种Selenium的功能,但它不仅仅是Selenium包装器。
本文档详细比较了基于Katalon和Selenium的开源框架,重点关注目标用户,部署,测试管理和脚本语言支持,性能,可用性以及与其他工具集成等关键功能
1.目标用户
软件测试自动化通常需要技术技能和有关被测应用程序(AUT)
的一些知识才能成功应用。关于AUT相关技术的知识不是必须的,而是推荐的。例如,如果您在网上进行测试,那么了解HTML和JavaScript应该会更好。Katalon Studio的用户可能是技术知识有限的测试人员。Katalon Studio隐藏了场景背后的所有技术复杂性,并提供了友好的UI和手动模式(用户可以拖放,选择关键字和测试对象以形成测试步骤),但仍然可以为技术更强大的用户提供必要的武器更深入地编写脚本模式,完全支持语法突出显示,代码建议和调试等开发便利。Selenium和Appium主要是自动化测试库,更适合具有良好编程技能的测试人员。他们通常需要使用像Eclipse或Visual Studio这样的IDE,将Selenium&Appium库(当然还有他们的依赖项)导入开发项目,在开始编写测试用例之前安装必要的单元测试框架,如JUnit,NUnit和TestNG。让我们想象一下汽车行业的一个类比,许多汽车共用相同的发动机,而制造商根据汽车的型号设计汽车的内饰和外饰。同样,Katalon Studio基本上是一体化解决方案。但如果你仍然喜欢(并且有必要的技能)自己从头开始构建所有东西,你可以选择像Selenium,Appium等引擎来构建另一个像Katalon Studio这样的自动化测试解决方案。除了Katalon Studio之外,还有一些基于Selenium和Appium构建的测试框架,例如Robot Framework
2.部署和入门
大多数开源项目很难设置和部署,因为它们是由许多不同的开发人员和提供商提供的,他们将工作提交到一个中心位置,即Github。您可能必须使用提交的源代码构建所有内容。但即使框架被打包成Selenium和Appium等即用型产品,您仍然必须通过API的技术指南并将它们与IDE和首选编程语言集成。以下是Selenium,Appium和Katalon Studio设置和运行所需的高级步骤。
Selenium:
1、下载并安装Java SDK
2、下载和设置测试库:首选语言的Selenium客户端API,Selenium
3.Server或独立包(仅一个库中的客户端和服务器捆绑)
4、下载IEDriver和ChromeDriver,设置环境和PATH变量
5、下载并设置开发IDE和您喜欢的测试框架,如JUnit,NUnit和TestNG
6、浏览Selenium API文档以开始创建项目并编写一些代码。
Appium:
1、下载并安装SDK您的编程语言Java,Python,Ruby或C#
2、下载并设置测试库(Appium,Node.js,Android SDK,XCode,如果Mac和iOS),设置环境和PATH变量
3、下载并设置开发IDE和您喜欢的测试框架,如JUnit,NUnit和TestNG
4、浏览Selenium API文档以开始创建项目并编写一些代码。
Katalon Studio是一个统一的捆绑包,其中包括几乎所有必需的东西,如Java,Android SDK,用于驱动浏览器的Web驱动程序以及所需的依赖项。您所要做的就是下载并安装到您的计算机上。最低安装要求:
由于Appium经常更新,Katalon Studio不捆绑Appium。如果您正在测试移动应用程序,则必须安装Appium,Node.js(在Windows上)和XCode(在Mac上)
您可以快速熟悉Katalon Studio,因为它具有友好的UI和示例项目。详细的用户文档绝对可以帮助您快速完成从简单到高级的功能。
3.测试管理和脚本语言支持
测试工件的管理:
Katalon Studio提供丰富的图形用户界面,包括菜单,树状视图,表格等,以管理测试用例,对象和数据文件。它的编写器用于脚本编写,具有完整的语法高亮,代码建议,调试,非常适合那些只想拖放或编程技巧有限的测试人员。
Katalon Studio脚本模式
Katalon Studio调试(debug)模式
Selenium和Appium在与Eclipse和Visual Studio等专用开发IDE集成时,可为开发人员提供直观的环境,但为手动或非技术测试人员提供不熟悉且不必要的复杂功能。使用Selenium和Appium时,管理测试对于非技术测试人员来说是一项挑战。
Selenium + TestNG + Eclipse的唯一开发模式 测试用例,测试套件,测试数据主要是用XML文件和编程代码组织的
脚本语言支持:Katalon Studio:Java / Groovy是目前唯一的选择Selenium,Appium + IDE:脚本语言的许多选择
4. 性能
Katalon Studio使用Groovy,一种基于Java构建的语言,并且必须加载许多库来解析测试数据,测试对象和日志记录。因此,对于具有数百个步骤的长测试用例,与Java相比可能会慢一些。
5.可用性和功能
5.1对象获取(spy):获取测试对象是测试自动化中最重要但耗时的活动。
Katalon Studio支持Web的对象间谍(通过使用IE,Firefox,Chrome的浏览器插件)和移动应用程序(通过使用屏幕截图模拟器)。Katalon Studio还支持AUT中高亮度捕获的对象:
Katalon Object Spy具有对象高光照支持
Selenium有一个名为Selenium IDE的Firefox插件,用于在Web应用程序上记录对象。不幸的是,不再维护和支持此附加组件。了解有关“为什么Katalon Studio成为Selenium IDE的完全替代品”的更多信息
Appium提供了一个配套的移动对象间谍工具,它很有用,但它没有高亮度的功能。
5.2测试数据管理和数据驱动
Katalon Studio提供数据文件对象,可以从外部源查询数据:CSV文件,Excel文件,关系数据库。Katalon Studio还支持对数据文件对象进行数据驱动的测试。例如,在测试登录功能时,您可以在Excel电子表格或数据库中指定100个预定义帐户。Selenium和Appium:测试人员必须直接在代码中硬编码测试数据。对外部数据源的任何支持都需要大量的编程工作。
5.3记录和测试生成
测试记录是帮助用户学习并快速适应测试自动化的最佳方式。它有助于自动化测试人员完成两项主要工作:捕获对象(在录制期间)并使用适当的操作或关键字生成测试步骤,从而节省至少50-60%的编写测试用例的时间。
Katalon Studio能够在Web和移动应用程序上记录和生成测试脚本:
与Katalon Studio类似,Appium支持为移动应用程序记录和生成测试脚本。
Selenium有Selenium IDE,现在被指定为过时的,用于记录用户操作并可以导出到JUnit / TestNG测试用例,但是对象识别信息直接硬编码到生成的代码中,而无需对象管理支持:
使用Selenium IDE进行测试记录
由Selenium IDE生成的测试用例
5.4内置关键字
Katalon Studio发布了预先定义的常用关键字或操作集,用户会发现它们足以开始实现大多数测试用例,但如果他们有更高级或特定的需求,他们仍然可以为他们的项目创建自定义关键字。自定义关键字是内置关键字的扩展。它们可以与内置关键字一样使用,也可以在用户之间共享。Selenium和Appium:用户必须以编程功能的形式自己构建通用和可重用的操作。
6.报告和分析
Katalon Studio提供直观的报告,包含友好可读的消息,并在发生故障时捕获屏幕截图,可以导出为CSV,HTML和PDF文件。Katalon Analytics以可操作的方式可视化测试执行结果,使团队能够快速诊断并更好地了解其自动化测试。
Katalon Analytics仪表板,具有可视化的执行历史记录
Selenium和Appium本身没有报告工具,但基于使用的测试框架将有一些简单的报告模板。像Katalon提供的复杂报告和分析功能可能是Selenium和Appium最需要的功能之一。
带有编程堆栈跟踪的TestNG报告,没有失败的屏幕截图
7.整合
Katalon Studio可以与多个测试管理系统和错误跟踪系统集成,包括qTest(https://www.qasymphony.com)和JIRA,以提交错误,缺陷,测试日志和测试结果。Katalon Studio还可以与基于云的移动测试的基于云的移动实验室Kobiton集成(https://kobiton.com)。Selenium和Appium:没有集成,用户必须自己构建集成功能。
8. CI集成
Katalon Studio提供命令行界面,允许CI Systems调用并触发测试执行。Selenium和Appium:用户必须创建和配置执行作业(Ant任务,maven目标等)以触发测试执行。
9.客户支持
Katalon团队通过其网站和论坛积极支持Katalon Studio的用户比Selenium和Appium社区更常规。Selenium和Appium是开源的,用户可以在其他用户或Selenium组的某处找到在线帮助,但没有任何保证可以快速得到帮助。
10.错误修复,发布时间表
Selenium和Appium小组没有明确的发布计划,报告的错误通常不会很快得到修复。Katalon Studio每月发布(热修复的小版本通常在几天到一周内可用),并且错误通常在几天内修复。用户反馈得到高度赞赏并迅速得到解决。
11.几个自动测试问题的解决方案
Selenium只能处理浏览器中的HTML内容。Windows弹出窗口和嵌入式对象(Flash,Flex,Media)等特殊和自定义控件将使Selenium无法处理。另一方面,Katalon Studio提供了处理这些Windows控件和识别图像的功能。Katalon Studio允许通过已打开的会话从任何步骤开始测试,这对于故障排除测试非常有帮助。Katalon Studio覆盖Firefox驱动程序,使新的Firefox版本(47+)向后兼容旧的Web驱动程序,而Selenium社区仍在努力应对不稳定的Gecko驱动程序。