java - 没有 HTTP 服务器的 Jersey 单元测试

标签 java testing jersey

我想设置一个非常轻量级的 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/

相关文章:

java - 日期文本框应始终为当前月份的第一个日期。?

android - 如何在硬件设备上测试签名的应用程序 (apk)?

jersey - JAX-RS 中特定于 URI 的 ExceptionMapper

java - 在 DNS 重定向错误的情况下,发送的正确 HTTP 响应是什么?

java - Jersey - WebResource 类型中的方法accept(MediaType[]) 不适用于参数(字符串)

java - Volley 超时错误...数据插入两次

java - Hibernate不创建表

java - 可以在没有默认构造函数的情况下创建类吗?

Linux命令的Python功能测试

Angular 5 - Angular firebase - 测试 - 模拟 getDownloadURL 方法