我想设置一个非常轻量级的 Jersey 单元测试。我的网络服务生成 JSON 结果,我想在不使用 HTTP 服务器的情况下直接对其进行验证。是否可以在不使用像 Grizzly HTTP 这样的 HTTP 服务器的情况下创建轻量级 jsersey 测试?
最佳答案
不确定您使用的是哪个版本的 Jersey,但请查看 Jersey 测试框架。有一个内存容器,不涉及任何网络连接。这是一个文档
在项目源码测试中可以看到一些不同的例子
依赖
Jersey 2.x
<dependency> <groupId>org.glassfish.jersey.test-framework.providers</groupId> <artifactId>jersey-test-framework-provider-inmemory</artifactId> <version>${jersey2.version}</version> </dependency>
Jersey 1.x
<dependency> <groupId>com.sun.jersey.jersey-test-framework</groupId> <artifactId>jersey-test-framework-inmemory</artifactId> <version>${jersey1.version}</version> </dependency>
唯一的缺点是,如果您对某些特定的 Servlet 功能有任何依赖,您可能无法在此处获得它。
关于java - 没有 HTTP 服务器的 Jersey 单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29624974/