Spring自帶mock測試Controller

原文:http://blog.csdn.net/yin_jw/article/details/24726941java

 

準備SpringMVC環境web

注意:使用mock測試須要引入spring-test包spring

 

Base類:加載配置文件mybatis

package com.wyy.snail.user.controller;  
  
import org.junit.runner.RunWith;  
import org.springframework.test.context.ContextConfiguration;  
import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests;  
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;  
  
@ContextConfiguration(locations = { "classpath:config/spring/spring-*.xml",  
        "classpath:config/spring/service-mybatis.xml" })  
@RunWith(SpringJUnit4ClassRunner.class)  
public class BaseControllerTest extends AbstractTransactionalJUnit4SpringContextTests {  
      
}

 

測試類:具體業務app

 

package com.wyy.snail.user.controller;  
  
import java.io.IOException;  
  
import org.junit.Test;  
import org.springframework.mock.web.MockHttpServletRequest;  
import org.springframework.mock.web.MockHttpServletResponse;  
  
public class LoginControllerTest extends BaseControllerTest {  
  
    @Test  
    public void testLogin() throws IOException {  
        LoginController loginController = (LoginController) this.applicationContext.getBean("loginController");  
        MockHttpServletRequest request = new MockHttpServletRequest();  
        MockHttpServletResponse response = new MockHttpServletResponse();  
        request.setMethod("POST");  
        request.addParameter("username", "aa");  
        request.addParameter("password", "bb");  
        loginController.login(request, response, "", "", "");  
    }  
  
}  
相關文章
相關標籤/搜索