RestTemplate 测试 REST 控制器的特定参数

RestTemplate Test w specific parameters for REST Controller

我正在使用 RestTemplate 为控制器编写集成测试,到目前为止我已经能够调用 most ,但是还无法处理这个特定的参数组合。

我知道如何处理 headers、GET 或 PUT 参数,但多个 String 是唯一一个尚未弄清楚的方法。不知道 @Annotations 是否有所作为。

@RequestMapping(value="/getBook", method = GET)   
@ResponseStatus(OK)   
public @ResponseBody  
GetBookResponse getBook(@RequestParam("isbnID") String isbnID, @RequestParam(required=false) Double price, @RequestHeader(required=false) String publisher)                                                             
     {
.....
}

以及在 POST

的情况下如何工作

通常我使用 ResponseEntity 来获取响应,但一直不知道如何准备它。

通常我们会创建一个新的 HttpRequest 并向其添加请求参数,然后在您的 post 中提交带有所有相应参数的 HttpRequest。我不知道如何使用您正在使用的框架来实现它。我已经为控制器编写了测试,这就是我的做法。 GET 请求通常在 url 中只有一个参数,因此您实际上不必添加请求参数,但 POST 应该将请求参数设置为 httpRequest。