我正在为我的项目模块运行Junit测试用例。执行完测试用例后,将获得以下错误报告。
ClaimControllerTest.shouldReturnClaimWithValidationResult:417 Status expected:<200> but was:<500>
我使用下面的maven注释来执行特定模块的测试用例。
mvn clean compile verify -Ptest
但是,我的项目有很多模块依赖性。我如何为我的整个项目执行我的测试用例(将所有模块)
上面的错误指向下面的测试用例代码
mockMvc.perform(get(String.format("/claims/%d/validation-result", claim.getId())))
.andExpect(status().isOk())
.andExpect(jsonPath("$.catClaimNumber").value(claim.getCatClaimNumber().intValue()))
.andExpect(jsonPath("$.validationResult.programErrorCode").value("UNTHRZD_EXTRNL_USR"))
.andExpect(jsonPath("$.validationResult.hasErrors").value(true));
更新1:
在执行Sys out操作后看到以下空指针异常
2019-01-03 15:46:27,401 [main] ERROR api.controller.BaseController: 83 - Unhandled exception while processing request for URL : http://localhost/claims/1901/validation-result with exception : null
java.lang.NullPointerException
对于以下代码:
mockMvc.perform(get(String.format("/claims/%d/validation-result", claim.getId()))).andDo(print());
答案 0 :(得分:1)
这是告诉您,它收到的错误代码为500,而不是调用休息端点的成功代码200。这意味着您的休息端点引发了异常。
您可能希望打印完整的响应,但要进行进一步的调试除外
mockMvc.perform(get(String.format("/claims/%d/validation-result", claim.getId()))).andDo(print());
答案 1 :(得分:0)
您有两个问题: