主页 > 科技 > 正文

来,我推荐10种超实用Java测试框架库

2019-07-16 21:17暂无阅读:561评论:0

老话说得好:工欲善其事,必先利其器。测试是应用法式生命周期里至关主要的一步,应用法式在进行最后的布置之前,需要经由测试来确保它的负载治理能力以及在特别情形下的工作前提和工作加载情形。在这里我介绍十种超实用的Java测试框架库,进展能够帮到人人。

1.JUnit

我不认为我需要对Junit做任何介绍。即使您是Java编程的初学者,也必然据说过它的台甫。它能够让您为Java代码编写出响应的单元测试法式。几乎所有的主流集成斥地情况(IDE),如Eclipse,NetBeans和IntelliJ都供应了对Junit的集成,这就意味着您能够在这些IDE情况中写入并运行单元测试。固然JUnit 5现在已经发布了,然则大多数人至今仍然在使用JUnit 4。不外本年或者会有下一个版本面世。您能够将JUnit用于单元与集成测试,它还可以支撑Java 8的各类功能。

2.REST Assured

在Java中测试和验证各类REST办事,要比诸如Groovy之类的动态说话可贵多。REST Assured则给Java范畴带来了说话上的轻便性。它是一种十分精良的REST API集成测试对象。

3.Selenium

Selenium应该是Java UI测试中最为遍及的对象了,它许可您测试JSP页面,而无需在浏览器中启动这些页面。您能够使用JUnit和Selenium来测试本身的Web应用法式的UI。它甚至许可您去编写Web应用,以验收各类测试。

4.TestNG

TestNG是一种由JUnit和NUnit成长而来的测试框架,不外它引入了很多新的功能,并且更为易用。例如:annotations能够让您在随意大的线程池中,运行各类可用策略的测试(将所有方式都放在本身的线程之中,每个线程对应一个测试类)。经由使用JUnit 4中的annotations,能够填补JUnit和TestNG之间的差距。此外只要您甘愿,还能够去整合Hamcrest的成家器。

5.Mockito

在Java的类库中,有着很多诸如PowerMock和JMock的mocking(模拟)框架。我小我对照喜欢Mockito,因为它有着简洁的API,完美的文档和大量的示例。Mocking是现在单元测试的一种要害手艺,它许可您在没有任何依靠性的情形下,自力地测试本身的代码,这也就是为什么我鼓励每个Java斥地人员在进修Junit时一并把握mocking框架的原因。固然我力推Mockito,这一mocking框架。当然若是您有乐趣,也能够去试试PowerMock或JMock。

6.Spock Framework

Spock是针对Java和Groovy应用的另一种测试和规范框架。它是由Groovy编写的,是以具有很强的表达性,并且是一种极其规范的说话。经由使用Spock,您的测试法式会变得加倍易读、且轻易维护。受益于Junit的运行法式,Spock可以与大多数IDE、构建对象、以及持续集成类型的办事器相兼容。

7.Cucumber

Cucumber是主动化集成测试的另一种常用对象,它与其他同类对象的分歧之处是其规范能力。Cucumber将规范和测试文档归并为一个可被Cucumber主动测试的整体,从而包管了您的规范文档一向是最新的。

8.Spring Test

Spring MVC是一种非常有效的测试框架,它能够在不涉及Web容器的情形下,进行深条理的测试。对于编写针对Spring应用的主动化测试来说,它是一种非常有效的库。若是您想对包罗MVC掌握器在内的基于Spring的应用,进行单元与集成测试的话,它可以供应一流的支撑。还有一种Spring Test DbUnit,它是将具有DbUnit的Spring Test框架和具有HtmlUnit的Spring Test MVC集成在了一路。经由使用上述这些对象,您能够轻松地以主动化的体式去测试各类Spring MVC应用法式。

9.DBUnit

平日,数据库是很多Java应用法式(包罗焦点Java和Web应用)弗成或缺的构成部门,当然它或者也是单元测试中的最大障碍。因为任何人都能够去更改数据、模式(schema)、表、甚至是存储过程,是以保持到Dev或UAT数据库长进行集成测试往往是弗成靠的,并且很轻易导致主动化集成测试的失败。DbUnit是JUnit的一个扩展,它能够被用于在每次集成测试之前,将数据库初始化为一种已知的状况,以确保数据库包含着准确的数据。DbUnit固然也有其自身的问题,然则它可以匡助我们将建立测试数据从测试代码里星散出来,所以它仍是一款非常实用的对象。

10.Robot Framework

Robot Framework是一种通用的基于Python的测试主动化框架,它能够被用于验收测试和测试驱动的斥地。它是一种将表格测试数据作为语法、以要害字作为驱动的测试框架。您能够使用它来测试分布式的异构应用法式,个中验证部门需要涉及到多种手艺与接口。

以上就是十种面向Java斥地人员的一些根基性的单元与集成测试的对象、框架库。这些都是在市面上,深受Java法式员喜爱且被普遍应用的测试框架库,它们都能够匡助您写出完美且流通的测试代码。