注入的ServletContext我需要写一个JUnit测试它运行在Tomcat一个相当复杂的应用程序。我怎么能在春天
我写建立起我的春天背景的类。
private static ApplicationContext springContext = null;
springContext = new ClassPathXmlApplicationContext( new String [] {“beans”....});
在应用程序有一个呼叫:
公共MyClass类实现ServletContextAware {
....最后字符串的文件夹= 的ServletContext.getRealPath( “/例子”); ... }
打破一切,因为ServletContext的为空。
我已开始建立一个模拟对象:
静态的ServletConfig servletConfigMock = createMock(ServletConfig.class);
静态的ServletContext servletContextMock = createMock(ServletContext.class);
@BeforeClass 公共静态无效setUpBeforeClass()抛出异常{
期望(servletConfigMock.getServletContext())andReturn(servletContextMock).anyTimes(); expect(servletContextMock.getRealPath(“/ example”))andReturn(“... fulllpath”)。anyTimes();
replay(servletConfigMock);重播(servletContextMock);
}
有一个简单的梅索德注入ServletContext的或开始与JUnit测试的运行时部署描述符tomcat的?
我使用:春天,行家下,Tomcat 6和EasyMock的为模拟对象。
邮件的目标是节省时间:每次更改后,我将不得不运行maven,然后启动tomcat。如果我可以使用junit测试来检查web服务(它有很多依赖关系) - 方法的功能......基本上我想等待每个函数测试的结果会更好。我将研究ReflectionTestUtils。看起来很有希望。 Thx的提示。 – 2010-03-24 10:12:43