北京软件测试培训
达内北京亚运村中心

010-62126400

北京软件测试培训 > 达内新闻 >达内北京软件测试培训班:13种自动化测试框架

达内北京软件测试培训班:13种自动化测试框架

  • 时间:2021-01-18 14:32
  • 发布:北京软件测试培训
  • 来源:达内新闻

13种必知的自动化测试框架有哪些?快和达内北京软件测试培训机构一起来学习吧!

1.机器人框架

如果是希望在测试自动化工作中使用python测试自动化框架,Robot框架是最佳选择。Robot框架基于Python,但也可以使用Jython(Java)或IronPython(.NET)。Robot框架使用关键字驱动的方法来简化测试的创建。Robot框架还可以测试MongoDB、FTP、Android、Appium等。它有许多测试库,包括Selenium WebDriver库和其他有用的工具。它有很多API来帮助它尽可能地扩展。Robot框架使用的关键字方法对于那些已经熟悉其他基于供应商的关键字驱动的测试工具的测试人员非常有用,这使得他们更容易过渡到开源。

2.网络驱动(WebDriverIO)

WebdriverIO是一个基于Node.js的自动化测试框架。它有一个集成的测试运行器,可以为web应用程序和本地移动应用程序运行自动化测试。同时,它可以在WebDriver协议和Chrome Devtools协议上运行,使它对基于Selenium WebDriver的跨浏览器测试或基于Chromium的自动化都有效。由于WebDriverIO是开源的,你可以得到一堆插件来满足你的自动化需求。“Wdio安装向导”使安装简单和容易。

3.Citrus

Citrus是一个开源框架,您可以使用它自动化任何消息传递协议或数据格式的集成测试。对于任何类型的消息传递,如REST、HTTP、SOAP或JMS,Citrus框架将适合测试消息传递集成。如果您需要与用户界面交互,然后验证后端流程,那么可以将Citrus与Selenium集成。例如,如果您必须单击“发送电子邮件”按钮并在后端验证电子邮件是否已收到,柑橘可以接收此电子邮件或UI触发的JMS通信,并验证后端结果,所有这些都在一个测试中完成。

达内北京软件测试培训机构

4.Cypress

Cypress是一个以开发人员为中心的测试自动化框架,它使测试驱动开发(TDD)成为开发人员的现实。它的设计原则是能够打包和捆绑所有东西,使整个端到端测试体验愉快和简单。Cypress的架构与Selenium不同;Selenium WebDriver远程运行在浏览器外部,而Cypress运行在浏览器内部。这种方法有助于理解浏览器内部和外部发生的一切,从而提供更一致的结果。它不需要您处理对象序列化或在线协议,同时为您提供对每个对象的本机访问。当您将应用程序拉入浏览器时,Cypress可以同步通知您浏览器内发生的每一件事情,这样您就可以本机访问每个DOM元素。它还使得在应用程序中放置调试器变得很容易,这反过来又使开发人员工具的使用变得更容易。

5.Selenium

web应用程序最流行的开源测试自动化框架之一。Selenium还可以作为许多其他测试工具的基础,因为它具有跨平台和跨浏览器的功能。Selenium支持多种编程语言,如Java、C#、PHP、Python、Ruby等。它易于维护,因为它拥有最大的在线支持网络之一。Selenium可以通过广泛的库和api进行高度扩展,以满足每个人的需求和需求。Selenium是测试人员的首选,因为它可以编写更高级的测试脚本来满足各种复杂程度。它为测试编写提供了一个回放工具,无需学习特定的脚本语言。

6. Cucumber

它是一个跨平台的行为驱动开发(BDD)工具,用于编写web应用程序的验收测试。Cucumber可以快速且容易地设置执行,并允许在测试中重用代码。它支持Python、PHP、Perl、.NET、Scala、Groovy等语言,以易于阅读和理解的格式实现函数验证的自动化。一个好的特性是规范和测试文档都被上传到一个最新的文档中。Cucumber使不熟悉测试的业务涉众更容易阅读代码,因为他们可以轻松地阅读代码,因为测试报告是用商业可读的英语编写的。该代码可以与Selenium、Watir、Capybara等其他框架一起使用。

7.Gauge

它是一个开源工具无关的测试自动化框架,适用于Mac、Linux和Windows。从事TDD和BDD工作的人会喜欢Gauge专注于创建动态/可执行文档。规范——量规自动化测试是在现有的ide(如visualstudio和Eclipse)中使用C、Java和Ruby的降价语言编写的。Gauge的功能也可以通过对插件的支持进行扩展。它是作为一个BYOT(自带工具)框架开发的。因此,您可以使用Selenium,也可以使用任何其他工具来驱动测试UI或API测试。如果你想要一个可读的非BDD方法来实现自动化,你应该试试Gauge。

8.Serenity

如果您正在寻找一个与cumber和JBehave等行为驱动开发(BDD)工具集成的基于Java的框架,那么Serenity可能是适合您的工具。它的目的是使编写自动化验收和回归测试更容易。它还允许您将测试场景保持在较高级别,同时在报告中容纳较低级别的实现细节。

Serenity充当Selenium WebDriver和BDD工具的包装器。它抽象了许多您有时需要编写的样板代码,这使得编写BDD和Selenium测试变得更容易。Serenity还提供了大量的内置功能,例如处理并行运行的测试、WebDriver管理、截屏、管理步骤之间的状态、促进Jira集成,所有这些都不需要编写一行代码。

9.Carina

Carina使用流行的开源解决方案构建,如Appium、TestNG和Selenium,这减少了对特定技术栈的依赖。您可以测试移动应用程序(本机、web、混合)、web应用程序、REST服务和数据库。Carina框架支持MySQL、sqlserver、Oracle、PostgreSQL等不同类型的数据库,提供了MyBatis ORM框架实现DAO层的惊人体验。它支持所有流行的浏览器和移动设备,并且在IOS/Android之间重用测试自动化代码高达80%。API测试基于Freemarker模板引擎,它在生成REST请求方面提供了极大的灵活性。Carina是跨平台的,可以在Unix或Windows操作系统上轻松地执行测试。

10.ZTF

Zentao Testing Framework,简称ZTF,是一款开源自动化测试管理框架。与市面上已有的自动化测试框架相比,ZTF更聚焦于自动化测试的管理功能。ZTF提供了自动化测试脚本的定义、管理、驱动、执行结果的回传、Bug的创建以及和其他自动化测框架的集成。ZTF使用go语言开发,可以支持各种平台。ZTF支持常见的编程语言,您可以选择您喜欢用的语言来开发自动化测试脚本。通过禅道自研的ZTF自动化测试工具,可很好地驱动8种单元测试框架、3种自动化测试框架来执行测试,并把最终结果回传给禅道,进行统一的报告展示。禅道ZTF打通了项目管理和持续集成工具之间的沟壑,贯穿持续集成、持续测试、持续部署等DevOps生命周期的不同阶段。

11.puppeteer

selenium在无界面的浏览器领域一直表现的都很挣扎,比如多年前的headless模式在面对稍微复杂的js页面时就一筹莫展,puppeterr的出现正好弥补了这一遗憾。

关于puppteer我之前有过详细介绍,其实就是无界面的chrome浏览器,这里就不过多解释了,相对于有界面的浏览器,puppeteer有着独特的优势。

google官方出品,chrome团队维护,稳定性相对可以得到保证

相对简单高效的api,使用方便

没有界面,资源占用相对可控,并且可以在浏览器端运行,天生有着云浏览器的潜力和属性

用户众多,资料丰富,遇到一般问题都可以搜索解决;

js语言调用,前端开发者基本没有太大的学习成本

生态丰富

不过原生的pupetter在调试上相对于selenium就没有那么方便了,好在一些第三方扩展可以缓解这些问题。

peppeteer适合这样的场景:对web页面进行持续的性能统计,一些不需要很高效但却要行为真实的爬虫,以及简单持续以及稳定的自动化验证用例。

推荐程度:四颗星,适合有高级需求的同学

12.appium

appium是移动端自动化测试的领导者,是webdriver协议瓜熟蒂落的产物,它的出现看起来在意料之外,但其实也在情理之中。如果你想在andorid/ios以及移动web上都使用同一套框架的话,appium大概是目前的最佳选择。

appium的设计思想来源于selenium,所以有着跟selenium相似的优势

支持多种语言

api简单而且接近selenium

相对活跃的社区以及使用者

如果你对移动端自动化一无所知而且需要快速开始进行自动化测试工作的话,那么闭着眼睛用appium就可以了。如果你对测试框架的性能以及其他方面有定制性的需求,那么你可能需要花更多的时间研究其他的框架。

推荐程度:四颗星

13.cypress

cypress是一款易用性很强的测试工具,其宣传的口径是下一代的自动化测试工具,从其提供的时间穿梭和实时刷新等功能来看,确实是目前自动化测试领域的game chagers。

cypress用javascript实现,很好的结合了可视化和专业性,并且提供了强大的debug能力,对于新手来说是非常友好的。

针对selenium的一些祖传问题,比如调试困难,所见并非所得,生态完善但工具链不完善等问题,cypress很好的给出了自己的答案,那就是all in one。只要你用了cypress,那么所有的一切cypress都帮你搞定,如果说用selenium是拼乐高的话,那么cypress就是直接玩拼好的成品,可玩性虽然低了一点,但是所见即所得,这对很多新人来说应该就是正义吧。

推荐程度:三颗星,生态目前看来还很新,不过潜力巨大

各种语言自带的单元测试框架

比如python的unittest框架,java的junit框架(严格来说junit框架并不是java自带的)等,这些基本的框架就像是盖房子过程中的地基和承重墙,基础打的牢固了,才能万丈高楼平地起。

这些框架其实并不是特别适合对于编程一无所知的纯小白,达内北京软件测试培训机构推荐大家在有一定的语言基础之后进行学习。

上一篇:北京测试培训:刚入行的测试新人,快速提升诀窍分享
下一篇:平均薪资10258元,学软件测试就是闷声拿高薪!

马上预约七天免费体验课

姓名:

电话:

达内软件测试直播课:进军软件测试行业策略

达内科技Q4财报来袭,IT职业教育持续盈利!

达内全套软件测试正课视频+海量资料免费送!

最高薪资14000元,平均薪资8480元!

  • 关注微信公众号

    回复关键字:视频资料

    免费领取 达内课程视频学习资料

  • 视频学习QQ群

    添加QQ群:1143617948

    免费领取达内课程视频学习资料

Copyright © 2018 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
江西省

贵州省

广西省

海南省