java - 如何配置 MockMvc 请求,它将作为我的 html 表单提交后发送的请求

标签 java testing spring-mvc mocking spring-test

我有这个 html Spring 表单:

<form:form action="addVacancy" modelAttribute="myVacancy">
        <form:label path="name">name</form:label>
        <form:input path="name" ></form:input>
        <form:errors path="name" cssClass="error" />
        <br>
        <form:label path="description">description</form:label>
        <form:input path="description" id="nameInput"></form:input>
        <form:errors path="description" cssClass="error" />
        <br>
        <form:label path="date">date</form:label>
        <input type="date" name="date" />
        <form:errors path="date" cssClass="error" />
        <br>
        <input type="submit" value="add" />
    </form:form>

我用这种方法处理这个表单:

@RequestMapping("/addVacancy")
    public ModelAndView addVacancy(@ModelAttribute("myVacancy") @Valid Vacancy vacancy,BindingResult result, Model model,RedirectAttributes redirectAttributes){
        if(result.hasErrors()){
            model.addAttribute("message","validation error");
            return new ModelAndView("vacancyDetailsAdd");
        }
        vacancyService.add(vacancy);
        ModelAndView mv = new ModelAndView("redirect:goToVacancyDetails");
        mv.addObject("idVacancy", vacancy.getId());
        redirectAttributes.addAttribute("message", "added correctly at "+ new Date());
        return mv;
    }

使用 MockMvc 如何传递与此 html 表单相同的数据?

@Test
public void testMethod(){
    MockHttpServletRequestBuilder request = MockMvcRequestBuilders.get("/addVacancy");
    //what must I  write here?
    ResultActions result = mockMvc.perform(request);
}

最佳答案

MockHttpServletRequestBuilder 包含相应的方法。 你可以使用

get("/addVacancy").requestAttr("name", "namefromform")...

或其他方法,如 param()、sessionAttr()(如果需要)

关于java - 如何配置 MockMvc 请求,它将作为我的 html 表单提交后发送的请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19422525/

相关文章:

java - Mongodb Java驱动程序将无法通过TLS连接

java - == on Java 中的 String 不符合预期?

android - 如何在 Robotium 中检查应用程序是否已完成?

php - 即使存在片段,assertJson 也会失败

algorithm - 归并与插入排序的实证分析——难点

java - ModelAttribute 可以是原始的吗?

java - Spring MVC主目录404错误Intellij Idea

spring - 了解 Spring MVC 中的上下文

java - 在tomcat服务器上运行时找不到文件

java - Spring MVC - 从 JSP 提交对象