如何模拟HTTP响应

5 java junit unit-testing mockito

我是Java单元测试的新手。我面临的问题是,我需要开发一个Junit测试,以将请求发送到服务器的API以测试两种方法:addUser和deleteUser。如果要从服务器添加/删除用户,则需要从服务器获取身份验证令牌。但是,由于服务器端的某些问题,我目前无法获得有效的令牌。因此,我想到的是模拟服务器行为,如果服务器接收到来自单元测试的请求,则服务器可以使用Jason数据进行响应,该数据指示添加/删除用户操作的状态。

因为我是Junit的新手。我不知道如何执行该操作。所以我的问题是,应用模拟最简单的方法是什么?

小智 8

HttpResponse httpResponse = mock(HttpResponse.class);
Run Code Online (Sandbox Code Playgroud)

请参阅:使用 Mockito 模拟 Apache HTTPClient

  • 这对 OP 有帮助,但对我的情况没有帮助。你需要模拟大量的东西才能让它有内容等。 (3认同)

cod*_*dev 6

您可以在单元测试中启动 test-http-server。有几个框架可以做到这一点。例如MockserverWiremock