我想使用没有MockMvc的SpringJUnit4ClassRunner。
public static void main(String[] args) {
WebApplicationContext wac = ...;
MockMvc mockMvc = MockMvcBuilders.webAppContextSetup(wac).build();
}既然main不是由Since容器调用的,那么如何创建一个WebApplicationContext呢?
像下面这样的不工作的伪码可能吗?
WebApplicationContext wac = new WebApplicationContext("classpath./service-context.xml");发布于 2014-07-17 11:59:45
创建MockMvc实例的主要方法有两种:
WebApplicationContext加载,可以通过Spring TestContext框架加载(例如,使用@ContextConfiguration和@WebAppConfiguration),也可以手动加载。@Controller类。这两种情况都在参考手册的测试章节的设置选项部分中有记录。
要手动创建WebApplicationContext,实例化一个GenericWebApplicationContext并从以下文件加载GenericWebApplicationContext定义:
GenericWebApplicationContext context = new GenericWebApplicationContext();
new XmlBeanDefinitionReader(context).loadBeanDefinitions(/* XML config files */);
context.refresh();或者来自这样的@Configuration类:
GenericWebApplicationContext context = new GenericWebApplicationContext();
new AnnotatedBeanDefinitionReader(context).register(/* @Configuration classes */);
context.refresh();请注意,您也希望在MockServletContext中配置和设置context。
致以敬意,
Sam ( Spring TestContext框架的作者)
https://stackoverflow.com/questions/24800241
复制相似问题