使用Spring Mock测试Action中的方法

阅读更多

使用包:spring-test.jar

ssh(struts1.x和struts2.x都差不多,只需把调用方法的参数修改就行)下测试:

package com.swcrm.service;


import junit.framework.TestCase;

import org.springframework.mock.web.MockHttpServletRequest;
import org.springframework.mock.web.MockHttpServletResponse;
import org.springframework.mock.web.MockServletContext;
import org.springframework.web.context.support.XmlWebApplicationContext;
import com.swcrm.action.SvsourceAction;

public class TestAction extends TestCase {

    private XmlWebApplicationContext ctx;

    public void setUp() {
        String[] paths = {
                "file:/D:/Documents and Settings/workspace/swcrm/WebRoot/WEB-INF/spring-config.xml" };
        ctx = new XmlWebApplicationContext();
        ctx.setConfigLocations(paths);
        ctx.setServletContext(new MockServletContext(""));
        ctx.refresh();
    }

    public void testGetUsers() throws Exception {
        MockHttpServletRequest request = new MockHttpServletRequest();
        MockHttpServletResponse response = new MockHttpServletResponse();
        request.addParameter("industry", "车行");
        SvsourceAction c = (SvsourceAction)ctx.getBean("/svsource");
        c.SvsourceList(null, null, request, response);
        
}
}

 

hibernate+spring下测试:

package com.swcrm.service;

 
import junit.framework.TestCase;

import org.springframework.mock.web.MockHttpServletRequest;
import org.springframework.mock.web.MockHttpServletResponse;
import org.springframework.mock.web.MockServletContext;
import org.springframework.web.context.support.XmlWebApplicationContext;
import com.swcrm.action.SvsourceAction;

public class TestAction extends TestCase {

    private XmlWebApplicationContext ctx;

    public void setUp() {
        String[] paths = {
                "file:/D:/Documents and Settings/workspace/swcrm/WebRoot/WEB-INF/spring-config.xml" };
        ctx = new XmlWebApplicationContext();
        ctx.setConfigLocations(paths);
        ctx.setServletContext(new MockServletContext(""));
        ctx.refresh();
    }

    public void testGetUsers() throws Exception {
        MockHttpServletRequest request = new MockHttpServletRequest();
        MockHttpServletResponse response = new MockHttpServletResponse();
        request.addParameter("industry", "车行");
        SvsourceAction c = (SvsourceAction)ctx.getBean("svsource");
        ModelAndView mav =c.SvsourceList(request, response);
        Map m = mav.getModel();
}
}

 

  • spring-test.jar (176.7 KB)
  • 下载次数: 143

你可能感兴趣的:(Spring,Web,junit,SSH,Hibernate)