基于JUnit测试Spring MVC的正确方法。(仅限Spring 3.2)
package controller; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.MediaType; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.web.WebAppConfiguration; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; import org.springframework.test.web.servlet.setup.MockMvcBuilders; import org.springframework.web.context.WebApplicationContext; import cn.com.fri.sysconfig.controller.SYSUserController; @RunWith(SpringJUnit4ClassRunner.class) @WebAppConfiguration @ContextConfiguration(locations = { "classpath:applicationContext-core.xml", "classpath:applicationContext-servlet.xml" }) public class TestController { @Autowired private WebApplicationContext wac; @Autowired private SYSUserController userController;//你要测试的Controller private MockMvc mockMvc; @Before public void setup() { mockMvc = MockMvcBuilders.standaloneSetup(userController).build(); } @Test public void testFindPageUsers() throws Exception { ResultActions ra = this.mockMvc.perform(MockMvcRequestBuilders .post("/sysconfig/user/findPageUsers") .accept(MediaType.APPLICATION_JSON).param("page", "1") .param("limit", "10")); MvcResult mr = ra.andReturn(); String result = mr.getResponse().getContentAsString(); log.info(result); } }
Spring-mvc-test包在Spring 3.2中已经被包含,我没有在其他版本中测试。
相关推荐
shirleypaddy 2020-10-19
qingmumu 2020-10-19
lustdevil 2020-10-18
ganlulululu 2020-10-12
lustdevil 2020-08-03
lustdevil 2020-07-18
lustdevil 2020-06-25
lustdevil 2020-06-21
zhengzf0 2020-06-21
宿命java 2020-06-15
JackYin 2020-06-14
dongxurr 2020-06-07
snowphy 2020-06-06
zhengzf0 2020-05-28
81901836 2020-05-26
Julywhj 2020-05-26