[問題] Spring Mvc test @valid 的問題

看板java作者 (西瓜瓜)時間8年前 (2017/02/23 11:09), 8年前編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
小弟我有一個 Spring Mvc test @valid 的問題想請教各位 ------------------------------------------------------------------------------ <body> <div class="container"> <h1>Please enter the term!</h1> <form action="createTerm" method="POST"> <input type="text" name="term"/> <input class="btn btn-default" type="submit" value="Create!!"/><br><br> </form> <p> <a href="home.html" th:href="@{/index}">Return to home</a> </p> </div> </body> ------------------------------------------------------------------------------ @Controller public class CreateTermController { private static final String REDIRECT_LIST_PAGE1_PATH = "redirect:/list/1"; @Autowired public TermService termService; @RequestMapping(value = "/createTerm", method = RequestMethod.POST) public String createTerm(@Valid TermViewModel model, BindingResult result, ModelMap modelMap) { if (result.hasErrors()) { modelMap.addAttribute("errors", result.getFieldErrors()); return "error"; } else { termService.createOrUpdate(new Term(model.getTerm())); return REDIRECT_LIST_PAGE1_PATH; } } } ------------------------------------------------------------------------------ @Test public void testEmptyInputError() throws Exception { mockMvc.perform(post("/createTerm")) .andExpect(model().attributeHasErrors("termViewModel")) .andExpect(model().attributeHasFieldErrors("termViewModel","term")) .andExpect(status().isOk()) .andExpect(view().name("error")); } ------------------------------------------------------------------------------ @Data public class TermViewModel { private int id; @NotEmpty private String term; private String newTerm; } ------------------------------------------------------------------------------ 在執行測試的時候會有 No errors for attribute: [termViewModel] java.lang.AssertionError: No errors for attribute: [termViewModel] 並且不會觸發到result.hasErrors()直接導向 list的頁面 但是在實際到網頁測試 卻能夠觸發 result.hasErrors() 再導向error的頁面 1.想請問一下 我的測試程式為什麼部會觸發 result.hasErrors()呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.250.147.33 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1487819389.A.144.html ※ 編輯: ian810317 (223.140.190.6), 02/23/2017 11:33:01
文章代碼(AID): #1Ohb9z54 (java)
文章代碼(AID): #1Ohb9z54 (java)