首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在没有MockMvc的情况下可以使用SpringJUnit4ClassRunner吗?

在没有MockMvc的情况下可以使用SpringJUnit4ClassRunner吗?
EN

Stack Overflow用户
提问于 2014-07-17 09:51:06
回答 1查看 1.9K关注 0票数 3

我想使用没有MockMvc的SpringJUnit4ClassRunner。

代码语言:javascript
复制
   public static void main(String[] args) {
     WebApplicationContext wac = ...;
     MockMvc mockMvc = MockMvcBuilders.webAppContextSetup(wac).build();
   }

既然main不是由Since容器调用的,那么如何创建一个WebApplicationContext呢?

像下面这样的不工作的伪码可能吗?

代码语言:javascript
复制
 WebApplicationContext wac = new WebApplicationContext("classpath./service-context.xml");
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-17 11:59:45

创建MockMvc实例的主要方法有两种:

  1. WebApplicationContext加载,可以通过Spring TestContext框架加载(例如,使用@ContextConfiguration@WebAppConfiguration),也可以手动加载。
  2. 在独立模式下使用@Controller类。

这两种情况都在参考手册的测试章节的设置选项部分中有记录。

要手动创建WebApplicationContext,实例化一个GenericWebApplicationContext并从以下文件加载GenericWebApplicationContext定义:

代码语言:javascript
复制
GenericWebApplicationContext context = new GenericWebApplicationContext();
new XmlBeanDefinitionReader(context).loadBeanDefinitions(/* XML config files */);
context.refresh();

或者来自这样的@Configuration类:

代码语言:javascript
复制
GenericWebApplicationContext context = new GenericWebApplicationContext();
new AnnotatedBeanDefinitionReader(context).register(/* @Configuration classes */);
context.refresh();

请注意,您也希望在MockServletContext中配置和设置context

致以敬意,

Sam ( Spring TestContext框架的作者)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24800241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档