我有一个带有侦听器RunListener
的自定义JUnit运行器。在eclipse环境中,这个testRunFinished(Result result)
监听器按预期工作,但是当我通过ANT运行它时,这个监听器没有被初始化。在build.xml特殊注释enableTestListenerEvents="true"
中添加,但这确实有帮助。
这是我的跑步者的代码:
@Override
public void run(RunNotifier notifier) {
notifier.addListener(new RunListener(){
@Override public void testRunFinished(Result result) throws Exception {
super.testRunFinished(result);
}
}
);
}
和build.xml:
<junit printsummary="yes" haltonfailure="no" fork="yes" enableTestListenerEvents="true">
非常感谢任何帮助。
编辑:顺便说一下,@Override public void testStarted(Description description) throws Exception {..}
工作正常,似乎只有testRunFinished
无法正常工作。
同样的错误,据我所知它还没有修复:https://issues.apache.org/bugzilla/show_bug.cgi?id=54970
我的ANT版本是1.9.4,也试过1.8.4。
答案 0 :(得分:0)
是main.test.java目录中的测试吗? 如果是的话 它可能是build.xml配置的问题,请参阅 exemple
您可能需要指定测试类
<batchtest fork="yes" todir="${reports.tests}">
<fileset dir="${src.test}">
<include name="**/*Test*.java"/>
</fileset>
</batchtest>