几种自动化测试工具
作者|布莱恩·安德森
翻译|袁思思
原始| / articles / best-automation-testing-tools-for-2018
/ r / 4ChQSCHEcXwOrWUr933y(QR码的自动识别)
随着时间的流逝,软件开发实践以及工具和技术都在不断变化。这些更改的目标是提高生产能力,质量和客户满意度,以缩短交货时间并提供更好的产品和服务。软件测试在实现这些目标中起着重要作用。
最近发布的《 2017-2018年凯捷世界质量报告》指出了软件质量和测试方面的一些有趣趋势。这三个主要趋势中的两个是测试自动化的提高以及敏捷和DevOps方法的广泛采用。如该报告所示,公司需要智能的自动化和分析来加速决策和验证,并更好地解决测试高度集成且不断变化的智能设备和产品的挑战。该报告还建议,智能测试平台的要求是自我知识和自适应能力,以支持整个应用程序周期。
在测试自动化领域,自动化工具当然是核心阶段。本文总结了排名最高的自动化工具和框架,这些工具和框架可以帮助公司进行自我定位,然后紧跟软件测试趋势。该列表包括开源和商业测试自动化解决方案。
1,硒
Elenium可能是Web应用程序中最受欢迎的开源测试自动化框架。自2000年以来,Selenium一直是Web自动化测试人员的首选自动化框架,特别是对于那些具有高级编程和脚本技能的人。 Selenium已成为其他开源测试自动化工具的核心框架,例如Katalon Studio,Watir,Protractor和Robot Framework。
Selenium支持多种系统环境(Windows,Mac,Linux)和浏览器(Chrome,Firefox,IE和Headless浏览器)。它的脚本可以用各种编程语言编写,例如Java,Groovy,Python,c#,PHP,Ruby和Perl。
尽管测试人员可以使用Selenium的灵活性,但是他们可以编写复杂的高级测试脚本来满足不同级别的复杂性,但是这需要高级的编程技能,并且需要为特定的测试需求构建自动化框架和资源库。
网站:/
许可:开源
2,Katalon Studio
Katalon Studio是针对Web应用程序,移动和Web服务的功能强大的测试自动化解决方案。 Katalon Studio建立在Selenium和Appium框架的基础上,利用这些集成的软件自动化解决方案。
此工具支持不同级别的测试技能集。非程序员可以轻松地启动自动化测试项目(例如使用Object Spy记录测试脚本),而程序员和高级自动化测试人员可以节省构建新库和维护脚本的时间。
可以使用QTest流程中常用的工具(包括qTest,JIRA,Jenkins和Git)将Katalon Studio集成到CI / CD流程中。它提供了一个称为Katalon Analytics的出色功能,该功能可通过仪表板(包括指标,图表和图形)提供测试执行报告的全面视图。
网站:/
许可证:免费
3,UFT
统一功能测试(UFT)是功能测试中众所周知的商业测试工具。它为API,Web服务,桌面GUI测试,Web和移动应用程序GUI测试提供了全面的功能集。该工具具有基于图像的高级对象识别功能,可重复使用的测试组件和自动文档。
UFT使用Visual Basic脚本编辑器注册测试过程和对象控件。 UFT与Mercury业务流程测试和Mercury Quality Center集成在一起。它通过与Jenkins等CI工具集成来支持CI。
网站:/ fr-ca / software / uft
许可:商业支付
4,瓦蒂尔
Watir是一个开源测试工具,用于基于Ruby资源库的Web自动化测试。 Watir支持跨浏览器测试,包括Firefox,Opera,无头浏览器和IE。它还支持数据驱动的测试,并与RSpec自动测量设备,Cucumber和Test / Unit等BBD工具集成。
网站:/
许可:开源
5,IBM Rational Functional Tester
IBM RFT是用于功能和回归测试的数据驱动测试平台。它支持广泛的应用程序,例如.Net,Java,SAP,Flex和Ajax。 RFT使用Visual Basic。 Net和Java用作脚本语言。 RFT具有称为故事板测试的独特功能。通过应用程序屏幕截图以Storyboard格式记录和显示用户操作。
RFT的另一个有趣的功能是它与IBM Jazz应用程序生命周期管理系统(例如IBM Rational Team Concert和Rational Quality Manager)的集成。
网站:/
许可:商业支付
6,TestComplete
SmartBear的TestComplete是用于Web,移动和桌面测试的功能强大的商业测试工具。 TestComplete支持各种脚本语言,例如Java,VB,Python和C ++脚本。与Katalon Studio一样,测试人员可以在TestComplete中执行关键字驱动和数据驱动的测试。该工具还提供了易于使用的记录和播放功能。
像UTF一样,TestComplete的GUI对象识别功能可以自动检测和更新UI对象,这有助于减少AUT更改时维护测试脚本的工作。它还将Jenkins集成到CI流程中。
网站:/
许可:商业支付
7,TestPlant eggPlant
基于图像的自动化功能测试工具,允许测试人员以相同的方式与最终用户进行交互。 TestPlant eggPlant与传统测试工具完全不同。它的方法是观察建模用户的角度,而不是测试人员经常看到的测试脚本视图。这使测试人员可以学到更少并直观地应用测试自动化。该工具支持各种平台,例如Web,移动和POS系统。它还提供实验室管理和CI集成。
网站:/
许可:商业支付
8,Tricentis Tosca
Tricentis Tosca是基于模型的测试自动化工具,为仪表板,分析和集成提供了连续测试的广泛功能,并支持敏捷和DevOps方法。
“ Tricentis Tosca”可帮助用户优化测试资产的可重用性。像许多其他测试自动化工具一样,它支持广泛的技术和应用程序,例如Web,移动和API。 Tosca还具有集成管理,风险分析和分布式执行的特点。
网站:/
许可:商业支付
9,Ranorex
Ranorex是用于Web,移动和桌面测试的相当全面的商业自动化工具。该工具具有高级GUI识别,可重复使用的测试脚本和记录/回放功能。无代码测试创建也是一项非常有用的功能,它允许新的自动化测试人员学习并将测试自动化应用到他们的项目中。
该工具支持用于Web应用程序测试的Selenium集成。测试人员可以使用Selenium网格在平台和浏览器之间分发测试。 Ranorex为公司提供了一种低成本的模式。
网站:/
许可:商业支付
10,机器人框架
机器人框架是一个开放源代码自动化框架自动测量设备,它为接受测试和接受测试驱动的开发(ATDD)实现了关键字驱动的方法。 Robot Framework提供了满足不同测试自动化需求的框架。但是,可以使用Python和Java来实现其他测试库,从而进一步扩展其测试功能。 Selenium WebDriver是在Robot Framework中广泛使用的外部库。
测试工程师可以将Robot Framework用作自动化框架,不仅用于Web测试,还可以用于Android和iOS测试自动化。对于熟悉关键字驱动测试的测试人员来说,学习机器人框架很容易。
网站:/
许可:开源
我们已经看到,在未来的日子里,这些自动化测试工具中的每一个都将提供独特的功能来解决软件自动化带来的挑战。大多数具有连续测试和集成,测试管理和报告功能。它们都支持不断增长的Web和移动测试自动化需求。但是,对于自动化工具而言,自适应和异构环境的智能测试和智能分析仍然是需要考虑的问题。