Intellij で Spring 3.2 を使用して spring-mvc コントローラーをテストするために Junit Mockito を学習しています。私のコントローラーは
@RequestMapping(value = "/user", method = RequestMethod.GET)
public String initUserSearchForm(ModelMap modelMap) {
User user = new User();
modelMap.addAttribute("User", user);
return "linkedInUser";
}
@RequestMapping(value = "/byName", method = RequestMethod.GET)
@ResponseStatus(HttpStatus.OK)
public
@ResponseBody
String getUserByName(HttpServletRequest request,@ModelAttribute("userClientObject") UserClient userClient) {
String firstName = request.getParameter("firstName");
String lastName = request.getParameter("lastName");
return getUserByName(userClient, firstName, lastName);
}
私がやったことは、名前でユーザーを検索するフォームが 1 つあることです。UserClient オブジェクトはセッション属性であり、コントローラーの JUnit テスト ケースを作成しようとしました
@Test
public void testInitUserSearchForm() throws Exception {
this.liClient = client.createUserClient();
mockMvc.perform(get("/user"))
.andExpect(status().isOk())
.andExpect(view().name("user"))
.andExpect(forwardedUrl("/WEB-INF/pages/user.jsp"));
}
@Test
public void testGeUserByName() throws Exception {
String firstName = "Wills";
String lastName = "Smith";
mockMvc.perform(get("/user-byName"))
.andExpect(status().isOk());
}
メソッドをテストするにはどうすればよいgetUserByName
ですか? また、セッション属性を追加するにはどうすればよいですか? そのメソッドの可能なテストでテストケースを書くのを手伝ってくれる人がいます。前もって感謝します