作家
登录

2017 热门开源自动化测试框架优缺点对比

作者: 来源: 2017-11-20 09:05:45 阅读 我要评论

Tech Neo技巧沙龙 | 11月25号,九州云/ZStack与您一路商量云时代收集界线治理实践

时光一晃已来到 2017 年的最后一个季度,TestProject 比较了在本年比较热点的 7 款开源主动化测试框架的优缺点,以赞助钠揭捉?择合适本身的测试框架。

1. Robot Framework

Robot Framework(RF)是用于验收测试和验收测试驱动开辟(ATDD)的主动化测试框架。 基于 Python 编写,但也可以在 Jython(Java)和 IronPython(.NET) 上运行,供给跨平台支撑(Windows、Linux 或 MacOS )。

长处:

  • 经由过程应用关键字驱动测试(KDT)办法简化了主动化测试过程,便利测试人员创建易读的测试。
  • 测试数据语法简单易用。
  • 生态体系丰富。由各类通用测试库和对象构成,这些对象都是作为自力项目开辟的。
  • 具有高度可扩大性。
  • 可经由过程 pabot 或 Selenium Grid 履行并行测试。

如不雅是针对大年夜范围的库和扩大的 KDT 主动化测试,建议应用此跨平台框架。如不雅想要添加新的关键字(经由过程 RF 测试库 API ),须要具备 Java / Python / C 说话的基本常识。

JUnit 是一款针对 Java 应用的单位测试框架,用于编写和运行可反复的测试。

长处:

  • 纯 Java 编写。
  • 支撑测试驱动开辟(TDD)。
  • 许可创建本身的单位测试用例套件。
  • 能很好地与其他对象(如 Maven )和 IDE(如 IntelliJ )集成。
  • 长时光成长,有本身宏大年夜的用户群体,可以很轻易找到文档。

缺点:

  • 如不雅须要 mocking 才能,则须要额外添加 Mockito(或其他模仿库)。
  • 因 JUnit 中的办法名称受 Java 商定限制捣杯因,非技恋人员很难读懂测试结不雅。

如不雅你正在为你的 Java 应用编写单位测试,那这可能是最好的选择。 然则,对于功能测试或非 Java 应用,应推敲其他解决筹划。

3. Spock

Spock 是用于 Java 和 Groovy 应用的测试和规范框架,基于 JUnit 。

长处:

  • 测试可读性强,支削发单的英词句子,便于浏览。
  • 供给周边高低文,大年夜而能轻松懂得若何解决故障。
  • 内置 mocking 和 stubbing 功能。
  • 支撑数据驱动测试(DDT)。

缺点:

  • 须要具备根本的 Groovy 说话常识。

如不雅你的应用是基于 JVM 的,并且目标是应用 DSL 进行 BDD 主动化测试,则此框架正合适!

4. NUnit

NUnit 是支撑所有 .Net 说话的单位测试框架。最初也是基于 Junit 的启发,完全采取 C# 编写,今朝已被完全从新设计以应用更多 .NET 说话功能。

长处:

  • 启动和测试履行速度快。
  • 自带断言和注释。
  • 支撑场行测试。
  • 支撑测试驱动开辟(TDD)。

仅供给根本的测试构造,是以须要额外的设置和设备(对于一些可能是有利的)。

缺点:

  • 非跨平台,仅实用于 .Net 说话。
  • 未集成到 Visual Studio echo 体系中,意味着应用它须要更多的保护。

一个很好的 C#开源单位测试框架,汗青悠长,口碑较高。 不过,如不雅你正预备应用 .NET 说话,也可以推敲 MSTest 。

5. TestNG

TestNG 是一个 Java 主动化测试框架,受 JUnit 和 NUnit 的启发,但又改进和新增了一些功能。旨在涵盖所有主动化测试类别:单位测试、功能测试、端到端、集成测试等。

长处:

  • 轻易整合到 maven 轮回中。
  • 使开辟人员可以或许编写灵活而强大年夜的测试。
  • 支撑数据驱动测试(DDT)。
  • 注释很轻易懂得。
  • 测试用例可以轻松分组。
  • 许可创建并行测试。

缺点:

  • 只支撑 Java ,至少须要具备 Java 编程说话的基本常识。
  • 必须投入时光进行框架设置和设计。

如不雅你应用 Java ,并正寻找端到端的主动化测试框架,同时愿意投入一点时光去设置框架,你应当推敲应用 TestNG 。

6. Jasmin

Jasmine 是一个 JavaScript 单位测试框架, 也被称为 JavaScript 的行动驱动开辟(BDD)测试框架。实用于网页、Node.js 项目或任何可以运行 JavaScript 的处所。它重要与 AngularJS 配对应用。

2. JUnit

长处:

  • 除了 JavaScript ,还可以运行在 Python 和 Ruby 中。如不雅想在你的办事器端运行客户端测试,它可以赞助你。
  • 被很多 CIs 应用和支撑。
  • 内置用于断言的语法。

缺点:

  • 多半情况下,它须要一个测试运行器(如 Karma )。
  • 难以异步测试。

缺点:

  • 自定义 HTML 申报较为麻烦。

如不雅你正在寻找一个同一的(客户端 - 办事器)单位测试解决筹划,Jasmin 可能会异常合适。

7. Mocha

Mocha 是一个 JavaScript 单位测试框架,它在 NodeJs 上运行测试,重要与 ReactJS 配对应用。

长处:

  • 内置测试运行器。
  • 支撑异步测试。
  • 应用灵活,可应用任何相符需求的断言库(Chai、expect.js、Must.js 等)作为 Node 标准“断言” 功能的替代品。

缺点:


  推荐阅读

  linux 服务器中木马及木马清除

Tech Neo技巧沙龙 | 11月25号,九州云/ZStack与您一路商量云时代收集界线治理实践 一、背景晚上看到有台办事器>>>详细阅读


本文标题:2017 热门开源自动化测试框架优缺点对比

地址:http://www.17bianji.com/lsqh/38980.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)