i使用函数键盘来测试mule ESB 3.5应用程序。
用于测试我有一个看起来像:
的课程public class MyIntegrationTest extends FunctionalTestCase {
@Override
protected String getConfigFile()
{
return "app-config.xml";
}
@Test
public void test1() throws Exception{
}
@Test
public void test2() throws Exception{
}
...
}
我注意到每个@Test
方法重新创建应用程序上下文和测试都相当慢。
使用裸露的弹簧框架,简单集成测试将缓存应用程序上下文,因此测试将更快。我想知道是否可以使用缓存的弹簧应用程序上下文进行mule应用程序集成测试?
AbstractMuleContextTestCase
具有 disposeContextPerClass
属性。您需要将其设置为true
,以实现每个测试类别的上下文缓存。首先,我浪费了一些时间尝试以@Before
方法设置它,但是已经太晚了。
我设法通过在测试类构造函数中使用disposeContextPerClass(true)
启用上下文缓存:
@RunWith(JUnit4.class)
public class MyIntegrationTest extends FunctionalTestCase {
public MyIntegrationTest() {
setDisposeContextPerClass(true);
}
}