我通过实现创建了自己的 JUnit-Runner org.junit.runner.Runner
,这样我就可以使用@RunWith
-Annotation 与它们一起运行我的 UnitTests。
它看起来有点像这样:
public class MyRunner extends Runner {
private Context myContext;
myContext.init();
private final BlockJUnit4ClassRunner runner;
public MyRunner(final Class<?> clazz) throws InitializationError {
myContext = new Context();
runner = new BlockJUnit4ClassRunner(clazz);
}
@Override
public void run(final RunNotifier notifier) {
runner.run(notifier);
}
@Override
public Description getDescription() {
return runner.getDescription();
}
public void filter(final Filter filter) throws NoTestsRemainException {
runner.filter(filter);
}
}
要清理资源,我必须MyContext
通过调用MyContext.close()
. 我应该在哪里调用它,以便在测试运行后清理我的资源?