我为JUnit创建了两个类A,B,每个类都有自己的ContextLoaders来加载应用程序上下文。现在,当我独立运行这些类时,JUnit测试运行良好。
但是,当我在这两个类上构建或运行JUnit时--首先运行的类--比如A,运行得非常好,但是第二个类会抛出一个异常(无法自动生成field....expected .)。我想做的是:-
//类--带有上下文加载器的
@runwith(springjunit4classrunner.class)
@ContextConfiguration(loader = A_ContextLoader.class)
public class A {
@Test
public void testMethod1() {
...
}
}带有上下文加载器B_ContextLoader的//B类
@runwith(springjunit4classrunner.class)
@ContextConfiguration(loader = B_ContextLoader.class)
public class B {
@Test
public void testMethod2() {
...
}
}据我所知,当第二个类的执行开始时,它使用现有的上下文而不是初始化一个新的上下文。在我的例子中,我不可能将两个上下文加载器合并到一个类中。
那么,我是否可以在A类执行结束时“卸载”应用程序上下文,或者在B执行开始时如何要求JUnit重新初始化上下文?还是我漏掉了什么?
发布于 2012-12-26 17:41:28
在第一个解决方法中,尝试将@DirtiesContext添加到睾丸中。然后,这个带注释的睾丸的上下文就不会在其他测试中使用。
https://stackoverflow.com/questions/14043935
复制相似问题