【发布时间】:2017-01-09 03:03:54
【问题描述】:
我有以下控制器接受输入为@RequestParam
@RequestMapping(value = "/fetchstatus", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public Response fetchStatus(
@RequestParam(value = "userId", required = true) Integer userId) {
Response response = new Response();
try {
response.setResponse(service.fetchStatus(userId));
response = (Response) Util.getResponse(
response, ResponseCode.SUCCESS, FETCH_STATUS_SUCCESS,
Message.SUCCESS);
} catch (NullValueException e) {
e.printStackTrace();
response = (Response) Util.getResponse(
response, ResponseCode.FAILED, e.getMessage(), Message.ERROR);
} catch (Exception e) {
e.printStackTrace();
response = (Response) Util.getResponse(
response, ResponseCode.FAILED, e.getMessage(), Message.ERROR);
}
return response;
}
我需要一个单元测试类,我是 spring mvc 的初学者。我不知道用@RequestParam 作为输入来编写测试类。
任何帮助将不胜感激..
【问题讨论】:
-
您要编写 UNIT 测试还是 INTEGRATION 测试。如果是单元测试,只需像调用任何其他方法一样调用该方法。如果您想要集成测试,请使用 Spring MVC 测试支持(请参阅参考指南)。
-
如果输入的参数是整数怎么办。它显示 .param() 需要参数作为字符串。
标签: java spring unit-testing spring-mvc