前言
随着 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 的支持比较全面
3.Selenium
Selenium 也是一个用于 web 应用程序测试的工具. Selenium 测试直接运行在浏览器中, 就像真正的用户在操作一样. 支持的浏览器包括 IE,Mozilla Firefox,Mozilla Suite 等. 这个工具的主要功能包括: 测试与浏览器的兼容性 -- 测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上.
4. TestNG
TestNG 是 Java 中的一个测试框架, 类似于 JUnit 和 NUnit, 功能都差不多, 只是功能更加强大, 使用也更方便.
5. Mockito
Mockito 是 GitHub 上使用最广泛的 Mock 框架, 并与 JUnit 结合使用 Mockito 框架可以创建和配置 mock 对象. 使用 Mockito 简化了具有外部依赖的类的测试开发.
6. Spock Framework
Spock 是一个为 Groovy 和 Java 语言应用程序来测试和规范的框架. 这个框架的突出点在于它美妙和高效表达规范的语言. 得益于 JUnit Runner,Spock 能够在大多数 IDE, 编译工具, 持续集成服务下工作. Spock 的灵感源于 JUnit,JMock, RSpec, Groovy,,Scala,,Vulcans 以及其他优秀的框架形态.
7.Cucumber
Cucumber 是一个支持 BDD(Behavior Driven
Development), 即行为驱动开发的自动化测试框架. 在进行单元测试或者集成测试之前, 事先将测试的步骤和验证信息用通用的语言 (英语) 定义好, 使得测试的步骤, 单元测试和集成测试每一步执行的目的能被非开发人员读懂, 并且写单元测试和集成测试的人员可以依据事先写好的框架进行代码的编写, 达到行为驱动开发的目的.
8.Spring Test
Spring Test 是 Spring MVC 自带了一个非常有用的测试框架, 该框架无需进行 Web 容器即可进行深度测试.
它是用于向 Spring 应用程序编写自动测试的最有用的库之一. 它提供了一流的支持, 可以为 Spring 的应用程序 (包括 MVC 控制器) 编写单元测试和集成测试.
9. DBUnit
DBUnit 是一个基于 Junit 扩展的数据库测试框架. 它提供了大量的类对与数据库相关的操作进行了抽象和封装, 虽然在 80% 的情况, 你只需使用它极少的 API. 它通过使用用户自定义的数据集以及相关操作使数据库处于一种可知的状态, 从而使得测试自动化, 可重复和相对独立.
10.Robot Framework
Robot Framework 是一个基于 Python 的, 可扩展的关键字驱动的测试自动化框架, 用于端到端验收测试和验收测试驱动开发(ATDD). 它可用于测试分布式异构应用程序, 其中验证需要涉及多种技术和接口.
总结
以上就是针对 Java 开发人员的一些必要的单元测试和集成测试工具, 框架以及库. 当然这里没有列出所有的工具, 例如 AssertJ,Hamcrest, 它们可以帮助您编写漂亮而流利的测试.
来源: http://www.bubuko.com/infodetail-3459125.html