java模拟服务器请求
我使用的是spring,在我的控制器方法中,我需要一个查询参数
@RequestMapping(method = RequestMethod.GET)
public MyClass myMethod(
@ApiParam(defaultValue = "some string", value = "some text") @RequestParam("myParam") MyClass2 myParam) {
//do something
}
现在,在JUnit测试中,我想调用这个方法,为此我预先准备了一个请求,但是我找不到合适的方法来setQueryString()
MockHttpServletRequest request = new MockHttpServletRequest();
request.setRequestURI("/pathToMyMethod");
request.setQueryString(new MyClass2().toString());
构造新对象并对其调用toString()
无效。
(调用空构造函数正在创建具有随机值的对象)
故障跟踪:
org.springframework.web.bind.MissingServletRequestParameterException: Required MyClass2 parameter 'myParam' is not present.
如何正确创建这样的请求
# 1 楼答案
使用MockMvc