`
andy_ghg
  • 浏览: 290633 次
  • 性别: Icon_minigender_1
  • 来自: 扬州
社区版块
存档分类
最新评论

基于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中已经被包含,我没有在其他版本中测试。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics