[問題] Spring Mvc test @valid 的問題
小弟我有一個 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
java 近期熱門文章
PTT數位生活區 即時熱門文章