栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何测试POST Spring MVC

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何测试POST Spring MVC

请参阅下面的示例代码,该示例代码演示如何使用junit和spring-test对控制器进行单元测试。

@RunWith(SpringJUnit4ClassRunner.class)@TestExecutionListeners({        DependencyInjectionTestExecutionListener.class,        DirtiesContextTestExecutionListener.class,        TransactionalTestExecutionListener.class })@Transactional@ContextConfiguration(locations = {    "classpath:rest.xml"    })public class ControllerTest{    private MockHttpServletRequest request;    private MockHttpServletResponse response;    @Autowired    private RequestMappingHandlerAdapter handlerAdapter;    @Autowired    private RequestMappingHandlerMapping handlerMapping;    @Before    public void setUp() throws Exception    {        this.request = new MockHttpServletRequest();        request.setContentType("application/json");        this.response = new MockHttpServletResponse();    }    @Test    public void testPost(){        request.setMethod("POST");        request.setRequestURI("/save/test");  //replace test with any value        final ModelAndView mav;        Object handler;        try{     MyObject o = new MyObject();     //set values     //Assuming the controller consumes json     ObjectMapper mapper = new ObjectMapper();     //set o converted as JSON to the request body     //request.setContent(mapper.writevalueAsString(o).getBytes());     request.setAttribute("attribute_name", o); //in case you are trying to set a model attribute.      handler = handlerMapping.getHandler(request).getHandler();     mav = handlerAdapter.handle(request, response, handler);     Assert.assertEquals(200, response.getStatus());     //Assert other conditions. }        catch (Exception e)  { }     }}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/635828.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号