vlambda博客
学习文章列表

推荐10款 Java 程序员测试工具

技术干货每日送达!


前言

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

1. JUnit

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

2. REST Assured

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

推荐10款 Java 程序员测试工具

3.Selenium

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

推荐10款 Java 程序员测试工具

4. TestNG

TestNG是Java中的一个测试框架, 类似于JUnit 和NUnit, 功能都差不多, 只是功能更加强大,使用也更方便。推荐10款 Java 程序员测试工具

5. Mockito

Mockito是GitHub上使用最广泛的Mock框架,并与JUnit结合使用Mockito框架可以创建和配置mock对象。使用Mockito简化了具有外部依赖的类的测试开发。推荐10款 Java 程序员测试工具

6. Spock Framework

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

7.Cucumber

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

推荐10款 Java 程序员测试工具

8.Spring Test

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

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

推荐10款 Java 程序员测试工具

9. DBUnit

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

推荐10款 Java 程序员测试工具

10.Robot Framework

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

总结

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

干货分享

001:《Java并发与高并发解决方案》学习笔记;002:《深入JVM内核——原理、诊断与优化》学习笔记;003:《Java面试宝典》004:《Docker开源书》005:《Kubernetes开源书》006:《DDD速成(领域驱动设计速成)》007:全部008:加技术讨论群

近期热文


想知道更多?长按/扫码关注我吧↓↓↓喜欢就点个"在看"呗^_^