Java - 如何测试 RestTemplate POST 方法成功状态代码?

标签 java post junit mockito resttemplate

我正在使用 RestTemplate postForEntity 方法发布到端点。如果POST成功,则返回状态代码201。我需要帮助使用 Mockito 为此方法编写测试用例。任何建议表示赞赏。谢谢

这是我的代码

public int postJson(Set<String> last){
    try{

        LOGGER.info("Status code " + statusCode);
    }   catch (Exception e) {
        e.printStackTrace();
    }
    return statusCode;          
}
private HttpEntity getHttpEntity() {
    return new HttpEntity<>( null, getHttpHeaders() );
}

private HttpHeaders getHttpHeaders() {
    return headersBuilder.build();
}

最佳答案

您的方法有问题,您在这里混淆了集成测试和单元测试。如果您只想进行单元测试,那么您可以使用 @Mock 模拟 RestTemplate。但是,如果您想验证与某些远程服务的集成,并且可以使用 @MockMvc 从 Controller 验证这一点,请参阅此 answer

关于Java - 如何测试 RestTemplate POST 方法成功状态代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59871829/

相关文章:

java - 需要在java中的某个点重新开始

java - 在自动化测试期间,带有 select 的输入保持为空

swift - 向谷歌表单发出 POST 请求

java - JUnit @BeforeClass 注释在 IDE 中编译正常,但 Maven 构建失败

java - 如何在 JUnit 中测试 float/double 的相等性?

java - Java 中递归的奇怪行为

java - 我对 Java 的类和类型的理解正确吗?

ios - Cordova iOS 应用程序 AJAX POST 到 SSL 失败

swift - 如何快速连接字符串中的 "+"运算符

Jenkins 中的 Python 单元测试?