[英]How to test reuqestmethod.get with object parameter by using mockmvc
如果我有 get 方法定義如下
@GetMapping(value = "/getfood")
public Food getFood(@valid final Order order)
我如何使用以下代碼在 mockmvc 測試中通過 Order object
this.mockMvc.perform(get("/getfood"))
謝謝
您可以使用 RequestBuilder 和 MvcResult:
RequestBuilder request = MockMvcRequestBuilders.get("/getfood").accept(MediaType.HTML);
MvcResult result = mockMvc.perform(request).andReturn();
CustomResponse customResponse = new CustomResponse("your data");
ResponseEntity response = new ResponseEntity<CustomResponse>(customResponse, HttpStatus.OK);
assertEquals(response.getBody().toString(), response.getResponse().getContentAsString());
您需要根據您的代碼修改此示例。 CustomResponse 是您需要創建的類。 其余的是從 org.springframework.test.web.servlet.* 導入的
為了使用 mockmvc 在 get 請求中發送自定義 object,我發現這段代碼很有用:
Order myOrder = new Order();
mockMvc.perform(
MockMvcRequestBuilders.get(API_V_1).contentType(APPLICATION_FORM_URLENCODED)
.flashAttr("order", myOrder );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.