推荐10款Java程序员使用的单元测试工具

共 1833字,需浏览 4分钟

 ·

2020-05-29 23:21


前言

随着DevOp的不断流行,自动化测试慢慢成为Java开发者的关注点。因此,本文将分享10款优秀的单元测试框架和库,它们可以帮助Java开发人员在其Java项目上编写单元测试和集成测试。

1. JUnit

我绝对JUnit不需要太多的介绍了。即使您是Java初学者,也可能听说过它。它可以帮助您为Java代码编写单元测试。几乎所有主要的IDE(例如Eclipse,NetBeans和IntelliJIDEA)都提供JUnit集成,这意味着您可以直接从那些IDE编写和运行单元测试。我们大多数人仍在使用JUnit 4,但JUnit 5已经发布。您可以将JUnit用于单元测试和集成测试,它还支持Java 8功能。

67e3ae1775ab99dd53b8e3a09d40f88f.webp

2. REST Assured

REST Assured是github上一个开源项目。项目地址:https://github.com/rest-assured/rest-assured优点:
  • 简约的接口测试DSL
  • 支持xml json的结构化解析
  • 支持xpath jsonpath gpath等多种解析方式
  • 对spring的支持比较全面

0ab80f3ab1012186c48f00356978659f.webp

3.Selenium

Selenium也是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE、Mozilla Firefox、Mozilla Suite等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。

2c3d56e5761f60979e8f25044da7ed39.webp

4. TestNG

TestNG是Java中的一个测试框架, 类似于JUnit 和NUnit, 功能都差不多, 只是功能更加强大,使用也更方便。d1db7d96717bfac881c2bf9d8453b4b3.webp

5. Mockito

Mockito是GitHub上使用最广泛的Mock框架,并与JUnit结合使用Mockito框架可以创建和配置mock对象。使用Mockito简化了具有外部依赖的类的测试开发。293a937320dc6eb1b1bc84cddcc73a22.webp

6. Spock Framework

Spock是一个为GroovyJava语言应用程序来测试和规范的框架。这个框架的突出点在于它美妙和高效表达规范的语言。得益于JUnit Runner,Spock能够在大多数IDE、编译工具、持续集成服务下工作。Spock的灵感源于JUnit,JMock, RSpec, Groovy,,Scala,,Vulcans以及其他优秀的框架形态。399abaa4d7f21569b7422718d2f7231b.webp

7.Cucumber

Cucumber是一个支持BDD(Behavior Driven Development),即行为驱动开发的自动化测试框架。在进行单元测试或者集成测试之前,事先将测试的步骤和验证信息用通用的语言(英语)定义好,使得测试的步骤、单元测试和集成测试每一步执行的目的能被非开发人员读懂,并且写单元测试和集成测试的人员可以依据事先写好的框架进行代码的编写,达到行为驱动开发的目的。

afee4497d0dc7d828da37be030652063.webp

8.Spring Test

Spring TestSpring MVC自带了一个非常有用的测试框架,该框架无需进行Web容器即可进行深度测试。

它是用于向Spring应用程序编写自动测试的最有用的库之一。它提供了一流的支持,可以为Spring的应用程序(包括MVC控制器)编写单元测试和集成测试。

10b4c93c14faa9e57514e9e2eb657351.webp

9. DBUnit

DBUnit是一个基于Junit扩展的数据库测试框架。它提供了大量的类对与数据库相关的操作进行了抽象和封装,虽然在80%的情况,你只需使用它极少的api。它通过使用用户自定义的数据集以及相关操作使数据库处于一种可知的状态,从而使得测试自动化、可重复和相对独立。

00b66ea451356f0b84b1000d4ad03fe7.webp

10.Robot Framework

Robot Framework是一个基于Python的,可扩展的关键字驱动的测试自动化框架,用于端到端验收测试和验收测试驱动开发(ATDD)。它可用于测试分布式异构应用程序,其中验证需要涉及多种技术和接口。

f8f22a4e03722e2d8e31811902edb783.webp

总结

以上就是针对Java开发人员的一些必要的单元测试和集成测试工具,框架以及库。当然这里没有列出所有的工具,例如AssertJHamcrest,它们可以帮助您编写漂亮而流利的测试。


推荐阅读:


6a04e92a0ff753bc4e0a4b8ef8d3d48e.webp喜欢我可以给我设为星标哦6a04e92a0ff753bc4e0a4b8ef8d3d48e.webp

d3712db22a739a67a78ba6f8ba2e344d.webp好文章,我“在看”1ee095cc164f81dcfcfab43b664f2880.webp
浏览 14
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报