本文首发于 微信公众号软测小生

Selenium是一种开源自动测试工具。它可以跨不同的浏览器和平台在Web应用程序上执行功能,回归,负载测试。Slenium是最好的工具之一,但确实有一些缺点。

业界有一些强大的工具可以替代Selenium,精挑细选的Selenium替代清单如下。

1、TestCraft



TestCraft是一个无代码的Selenium测试自动化平台。革命性的AI技术和独特的可视化建模可以更快地创建和执行测试,同时消除测试维护开销。测试人员无需编码即可创建全自动测试场景。

客户可以更快地发现bug,更频繁地发布bug fix,与CI/CD集成,提高数字产品的整体质量。

主要特点:

  • 无需编程技能。利用手动测试人员的业务知识,并允许他们创建自动化测试场景。
  • 大大降低维护成本。由于使用AI机制,脚本会自动进行调整以进行更改。只需单击几下,即可进行主要更改。
  • 基于Selenium,快速集成和利用社区开发的模块
  • 提供即时的时间价值。无需安装(SaaS)。很容易掌握

2、mabl



mabl提供无脚本的端到端测试自动化,与交付管道集成,因此您可以专注于改进你的应用程序。

主要特点:

使用专有的机器学习模型,mabl可以快速自动识别和处理应用程序问题,因此您可以:

  • 快速修复bug--健壮的测试输出可以帮助您快速诊断和修复bug,以免它们影响客户。
  • 交付更多代码--用户界面更改时,测试会自动修复,因此你可以花更少的时间维护测试。
  • 保持质量--通过对每个构建进行自动回归分析来防止不良发布。

3、HeadSpin

HeadSpin是世界上第一个互联智能平台TM,提供Web,移动,IoT和5G解决方案,在应用程序、设备和网络之间统一测试、监控和分析。 HeadSpin授权开发、QA、运营和产品团队优化互联体验,确保数字业务的成功。



主要特点:

  • 通过共享设备云访问30多个国家的300多台设备:
  • 远程调试
  • 支持真机SIM的Android和iOS设备
  • 500 +并发测试
  • 回归测试
  • 自动化
  • 本地化测试
  • 本地调试和代码分析

4、Squish

Squish是全球3000多家公司的GUI测试自动化工具的首选,可以自动化其图形用户界面(GUI)和人机界面(HMI)的功能回归测试和系统测试。Squish GUI测试工具是一个100%跨平台的工具。



主要特点:

  • 对所有主要GUI技术的深入支持
  • 完全支持所有桌面、移动、web和嵌入式平台
  • 测试脚本录制
  • 强大可靠的对象识别和验证(基于对象和基于图像)
  • 不依赖于屏幕截图或视觉外观
  • 强大的集成开发环境(IDE)
  • 多种流行的脚本语言可用于测试脚本
  • 全面支持行为驱动开发(BDD)
  • 通过命令行工具完全控制
  • 与测试管理和CI系统集成

5、TestCafe Studio

TestCafe Studio是一个跨平台、端到端的web测试平台。TestCafe Studio允许您使用zero代码创建、运行和维护自动化的web测试。

主要特点:

  • 内置的视觉测试记录仪–无需代码。
  • 跨平台和跨浏览器——在Windows、macOS、Linux、iOS、Android以及Chrome、Firefox、Safari、Edge和IE中运行测试。
  • 不需要额外的工具——不需要WebDriver,浏览器插件或其他测试软件。
  • 自动生成的元素选择器——TestCafe Studio为测试中使用的每个页面元素生成一个选择器,并提供涵盖各种测试场景的其他选择器列表。
  • 内嵌等待机制

6、Ranorex

使用Ranorex Webtestit,这是为使用Java或TypeScript进行Web测试自动化而设计的轻量级IDE,为Selenium提供了开箱即用的Web测试自动化。跳过耗时的设置,并通过优化的工作流程和最佳实践来减少维护工作。



主要特点:

  • 快速而简单的设置:搭建你的整个测试框架
  • 自动应用最佳实践,如页面对象模式
  • 使用Chrome DevTools的Ranorex Selocity扩展立即生成UI元素选择器和屏幕截图
  • 创建高效的Selenium兼容代码
  • 将跨浏览器测试分发到本地WebDriver端点,Selenium Grid或基于云的提供程序
  • 与Jira、VSTS、Jenkins和TestRail等工具集成

7、Parasoft Selenic

Parasoft Selenic利用AI解决了Selenium方面的问题,因此您不必摆脱Selenium。它可以直接与你现有的Selenium测试一起使用,因此您不会被限制在一个专用平台上。



主要特点:

  • 运行时自我修复,运行后执行AI驱动的建议。你可以有效地维护现有的Selenium脚本,从减少维护,减少修复bug而减少测试时所花费的时间。
  • 使用页面对象模型创建Selenium测试套件。团队可以从一开始就迅速建立可维护的测试实践。
  • 使用“测试影响分析”优化测试执行。与底层代码更改相关的测试执行可以从CI/CD管道获得更快的反馈。

8、Subject7

Subject7是一个自动化平台,可通过一系列命令提供端到端测试自动化功能。这些命令可以通过一个易于使用的web界面获得。模仿用户操作,每个命令都隐藏了诸如Selenium,Appium,SikuliX,JMeter,ZAP等行业标准软件包的复杂性。



主要特点:

  • 易于使用的非编码器Web界面
  • 与JIRA,Jenkins和REST支持的DevOps管道集成
  • 利用AWS,Azure和Google云进行零设置并扩展执行范围
  • 电子邮件通知,视频记录,团队协作等
  • 使用Selenium和Appium等开源标准来驱动Web端和移动端(Mobile)

9、 Cypress

Cypress是针对Web环境的开源测试自动化解决方案。与Selenium相比,该工具与当前的开发实践紧密结合。



主要特点:

  • 测试状态菜单功能 --> 可查看通过或失败的测试数量
  • Cypress会自动等待命令和断言再继续
  • 允许检查响应网站与视窗大小。
  • 它拍摄测试运行的快照。对于无头浏览器执行,它会用视频记录整个测试运行的过程。
  • Cypress会自动重新加载测试中所做的所有更改
  • 命令日志和应用程序预览显示了在测试执行过程中Web应用程序上精确的自动化操作。

10、iMacros

iMacros是用于Web测试的记录和回放工具。 iMacros还可以使重复的工作自动化。该测试工具用于

  • 浏览器自动化
  • Web 测试
  • 数据提取



    主要特点:
  • Internet Explorer、Firefox和Chrome的免费附加组件。可以自动化几乎所有的网络任务。
  • 允许对web应用程序进行功能、性能和回归测试
  • iMacros允许将数据从电子表格上传到网站,或直接在网站中填充Excel表格。
  • 对网站技术(包括Java,Flex,Ajax或Silverlight小程序)进行功能,性能和回归测试的自动化。

11、Cucumber

Cucumber是一个开源的BDD(行为驱动开发)测试工具。



主要特点:

  • 由于使用了BDD,业务和IT团队可以深入理解测试。
  • Cucumber将规范和测试文档合并成一个紧密的整体
  • 不断更新,并有大量的社区支持。

12、UFT (Unified Functional Test)

UFT也被称为QTP(快速测试专家),是最强大的商业测试自动化工具。最初由Mercury Interactive开发,后来被HPE收购,现在由MicroFocus拥有。它对于功能测试和回归测试很有用。



主要特点:

  • UFT不仅支持web,还支持各种开发环境,如SAP、Oracle、Seibel等。
  • 该工具支持跨浏览器和多平台测试,
  • 允许跨多台机器分布测试。
  • 基于图像的目标识别是业界最好的。
  • 视觉测试脚本设计,有助于更快的测试修改和升级。
  • QTP/UFT使用VBScript语言,与其他测试脚本语言相比,VBScript语言易于使用。

13、Serenity

Serenity BDD是自动化验收和回归测试的selenium替代品。此工具生成记录和描述功能测试覆盖率的测试报告。



主要特点:

  • 每个测试步骤的注释/叙述和屏幕截图。
  • 通过需求或发布汇总来聚合测试结果。
  • 帮助你编写更干净、更容易维护的自动化代码。
  • 将你的自动化测试映射回你的需求
  • 提供了测试覆盖率。

14、IBM Ration Functional Tester

IBM Rational Functional Tester是一个功能和回归自动化测试工具。该软件为功能,回归,GUI和数据驱动的测试提供了自动测试功能。它支持Java,Siebel,SAP,Net,PowerBuilder,Ajax等一系列应用程序。



主要特点:

  • 通过屏幕截图进行可视化编辑
  • Rational Functional Tester使您的开发团队能够创建相关的关键字脚本,这些脚本可以方便地重用,从而提高效率。
  • 使用Eclipse,可以更轻松地用Java编写测试脚本代码。
  • 此功能测试工具可自动完成代码,并提供高级调试选项
  • 易于与其他第三方软件集成

15、Galen framework



Galen框架最初是为了在真实的浏览器中测试web应用程序的布局而引入的。今天,它已经成为一个功能齐全的测试框架。这个自动化测试工具可以与Selenium集成,用于web应用程序的可视化和布局测试。

主要特点:

  • 基于HTML的错误报告与截图
  • 易于编写/读取的语法
  • 它提供了多种浏览器支持
  • 使用Galen specs语言,你可以描述任何复杂的布局,包括不同的屏幕大小或浏览器。
  • Galen Framework在Selenium Grid中运行良好。这允许设置测试以在类似云的Sauce Labs或BrowserStack中运行。
  • 图像对比功能。

16、SikuliX

SikuliX可自动执行Windows,Mac或Linux / Unix操作系统中屏幕上显示的所有内容。它使用OpenCV提供的图像识别功能来识别和控制GUI组件。 SikuliX工作流程基于搜索图像并使用鼠标和键盘作用于GUI元素。



主要特点:

  • SikuliX可用于自动执行重复性任务。
  • 它可以用于自动化日常使用的任务或Desktop/Web应用程序。
  • 测试正在开发的应用程序或Web。

17、Redwood



RedwoodHQ是一个开源测试自动化框架。它安装在单个服务器上,可以从Web界面使用多个人。它可以与任何兼容HTML5的浏览器一起运行,而无需进行任何安装。

主要特点:

  • 它允许实时观察测试执行情况以及详细结果,可单击的堆栈跟踪异常和屏幕截图。
  • 它允许在多台机器上并行执行自动化测试用例。
  • 导入现有的TestNG / JUnit测试用例并开发新的用例。
  • 与Jenkins或TeamCity之类的工具兼容,以与持续集成过程集成

18、Watir



Watir是用于自动化测试的开源Ruby库。它支持功能和回归Web测试。

主要特点:

  • 它支持web应用程序,不管它是在什么地方开发的。
  • 它支持不同平台上的多个浏览器。
  • Watir是一个Ruby库家族,但它支持所有其他技术。
  • 它使用Ruby(一种功能齐全的现代脚本语言)而非专有的商业脚本。

19、Telerik Test Studio

Test Studio是由Progress开发的软件自动化工具。它支持自动化的应用程序,例如AJAX,HTML5,JavaScript,Silverlight,WPF,MVC,iOS,Android,PHP。它具有本机跨浏览器支持,并且是一种记录和回放工具。



主要特点:

  • 可以执行API以及负载测试吗。
  • 强大的对象存储库功能。
  • 支持持续集成。
  • 对Telerik UI控件的本机支持。
  • 测试HTML弹出窗口和浏览器对话框。

20、Screenster



Screenster是基于云的UI测试平台。它用于Web应用程序和网站的视觉回归测试。它捕获每个步骤的屏幕快照并将其存储为基线。

主要特点:

  • 低代码解决方案,使您无需手工编码即可自动执行UI测试。
  • 以最简单和最快的方式记录测试,以自动化可视化测试。
  • Screenster可以将测试作为CI的一部分运行。因此,如果在基线运行和回归运行之间检测到差异,则测试将标记为失败。
  • Screenster具有强大的功能,例如自动更正智能选择器和自动超时管理。

21、Katalon Studio

Katalon Studio是一个自动化测试工具,可用于Web和移动应用程序测试;它是为支持不再能够记录和回放自动化测试的用户而开发的。

主要特点:

  • 提供用于组织关键字,测试用例和对象存储库的项目模板。
  • 允许对Web、iOS、Android、iOS和OS系统进行API测试
  • 易于与JIRA、Jenkins、GIT和qTest与本地插件集成
  • 使用IDE构建高级脚本或使用表格界面自定义步骤

22、Tricentis Tosca



Tricentis Tosca是一个持续测试平台,可加速测试以与DevOps和Agile保持同步。通过提供基于模型的测试自动化的可维护性,它允许重用测试。它有助于将回归测试时间减少到几分钟。

主要特点:

  • 自动化API, SAP,网络,机器人,移动等。
  • 为敏捷和DevOps提供快速的反馈。
  • 将回归测试时间减少到分钟。
  • 清晰了解业务风险。

23、Cloud QA



CloudQA是支持SaaS的功能测试自动化工具,用于基于Selenium构建的Web应用程序。这种硒替代品包括三种不同的工具,即TruRT用于功能和回归测试,TruLoad用于负载测试,TruMonitor用于综合监控。

主要特点:

  • 完全集成的QA自动化工具。
  • 测试模块是在一个具有通用架构的平台上开发的。
  • 它提供了一个无代码环境来设置健壮的自动化测试用例。
  • 允许与其他ALM、bug跟踪和版本控制工具集成。

2020 | 可替代Selenium的测试框架Top15的更多相关文章

  1. Selenium 4 Java的最佳测试框架

    几十年来,Java一直是开发应用程序服务器端的首选编程语言.尽管JUnit一直在与开发人员一起帮助他们进行自动化的单元测试,但随着时间的推移和测试行业的发展,特别是伴随着自动化测试的兴起,已经开发了许 ...

  2. 使用 PHPUnit 和 Selenium 进行测试

    适用于 PHP 的 NetBeans IDE 支持 PHPUnit 自动测试.通过 PHPUnit,NetBeans IDE 可为 PHP 提供代码覆盖率,这与 IDE 为 Python 提供的代码覆 ...

  3. selenium测试框架使用xml作为对象库

    之前已经写过一篇: selenium测试框架篇,页面对象和元素对象的管理 上次使用的excel作为Locator对象管理,由于excel处理不够方便,有以下缺点: 不能实现分page 加载Locato ...

  4. selenium 测试框架中使用grid

    之前的测试框架:http://www.cnblogs.com/tobecrazy/p/4553444.html 配合Jenkins可持续集成:http://www.cnblogs.com/tobecr ...

  5. selenium测试框架篇,页面对象和元素对象的管理

    前期已经做好使用Jenkins做buildhttp://www.cnblogs.com/tobecrazy/p/4529399.html 做自动化框架,不可避免的就是对象库. 有一个好的对象库,可以让 ...

  6. Selenium关键字驱动测试框架Demo(Java版)

    Selenium关键字驱动测试框架Demo(Java版)http://www.docin.com/p-803493675.html

  7. TestNG测试框架在基于Selenium进行的web自动化测试中的应用

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ TestNG+Selenium+Ant TestNG这个测试框架可以很好的和基于Selenium的 ...

  8. selenium测试框架篇

    做自动化框架,不可避免的就是对象库. 有一个好的对象库,可以让整个测试体系: 更容易维护 大大增加代码重用 增加测试系统的稳定性 这里先了解一下我所说的对象库: 所谓的页面对象,是指每一个真是的页面是 ...

  9. selenium之多线程启动grid分布式测试框架封装(四)

    九.工具类,启动所有远程服务的浏览器 在utils包中创建java类:LaunchAllRemoteBrowsers package com.lingfeng.utils; import java.n ...

随机推荐

  1. python爬虫之字体反爬

    一.什么是字体反爬? 字体反爬就是将关键性数据对应于其他Unicode编码,浏览器使用该页面自带的字体文件加载关键性数据,正常显示,而当我们将数据进行复制粘贴.爬取操作时,使用的还是标准的Unicod ...

  2. Spring编译后没有xml配置文件解决方法

    问题描述 在使用Maven来构建Spring项目的时候,使用下面代码来读取Spring配置文件. ClassPathXmlApplicationContext context = new ClassP ...

  3. Java入门教程八(面向对象)

    对象概念 一切皆是对象.把现实世界中的对象抽象地体现在编程世界中,一个对象代表了某个具体的操作.一个个对象最终组成了完整的程序设计,这些对象可以是独立存在的,也可以是从别的对象继承过来的.对象之间通过 ...

  4. Docker实战之Consul集群

    前言 最近参加了几场 Java 面试,发现大多数的微服务实践还是 Eureka 偏多,鉴于笔者的单位选型 Consul,这里对 Consul 做简单总结. 该篇是 Docker 实战系列的第三篇.传送 ...

  5. 石油测井专题(六)MCM工艺在LWD的应用

    在上一篇的MCM工艺我们提到过石英挠性加速度计的伺服电路采用此工艺可以有效提高仪器产品的稳定性和寿命. MCM相对于印制电路板(PCB)来讲,MCM技术采用了更短的连接长度和更紧密的器件布局,从而降低 ...

  6. Ant-design-pro的动态菜单的实现

    页面效果: 如何实现: 1:分别建立SiderMenu和SubMenu组件 2.去and-desingn-vue的官方文档里copy单文件递归菜单的代码https://www.antdv.com/co ...

  7. Dubbo 入门-细说分布式与集群

    什么是Dubbo Dubbo是一款高性能.轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现. 什么是RPC RPC全称(Rem ...

  8. .netCore下的jwt的梳理-->借鉴于“老张的哲学”

    之前在公司的项目中有用到jwt进行token验证,但是公司里用的框架已经集成好了jwt,所以对jwt的的了解不够清晰,感觉还是隔着一层.在看了“老张的哲学”的jwt部分后对jwt的认识才更加深刻了一些 ...

  9. 写react项目要注意的事项

    1,className一定是大写字母开头,例如:App-logo,App,App-header. 2,有关react元素的更新,唯一办法是创建新元素,然后重新将其传入ReactDOM.render() ...

  10. MATLAB神经网络(2) BP神经网络的非线性系统建模——非线性函数拟合

    2.1 案例背景 在工程应用中经常会遇到一些复杂的非线性系统,这些系统状态方程复杂,难以用数学方法准确建模.在这种情况下,可以建立BP神经网络表达这些非线性系统.该方法把未知系统看成是一个黑箱,首先用 ...