2016-04-13 151 views
0

我是新的单元测试弹簧测试。我有一个spring-mvc-rest应用程序。我可以使用MockMvc来模拟环境。弹簧测试和junit单元测试弹簧mvc

我的问题是我需要在每个测试类中构建MockMvc对象吗? 这不是重复的配置。

有没有一种方法可以在一个类中定义它并在每个测试类中使用它?

如果我们通过单一配置或多个配置,那么哪个是最好的方法(通过设计和维护)?

+1

您可以创建一个MockMvc生成器,特定于applicati并执行所有测试中常见的所有内容。 –

回答

2

这就是所谓的inhertance

例如

基类

@ContextConfiguration(initializers = ConfigFileApplicationContextInitializer.class) 
public class BaseTest 
{ 

    protected MockMvc mockMvc; 

    @Before 
    public void setup() 
    { 
     mockMvc = MockMvcBuilders.standaloneSetup().build(); 
    } 
} 

扩展

public class ExtendedTest extends BaseTest 
{ 

    @Test 
    public void test() 
    { 
     //execute test here we have access to the mockMVC 
    } 
}