如何获取当前JUnitCore的访问权限来添加监听器?
我有一些测试基础结构类,我想将它们添加为 JUnitCore 的侦听器,特别是 testRunFinished。 我正在从 ant 的任务中调用 Junit 4。
有什么方法可以让我访问任务创建的 JUnitCore 以便添加侦听器吗?
I have some test infrastructure classes that I'd like to add as listeners of JUnitCore , specifically for testRunFinished.
I'm invoking Junit 4 from ant's task.
Is there some way for me to get access to the JUnitCore created by the task so that I can add a listener?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
不是来自 ant 的 junit 任务。
您最好编写一个“手动”运行测试套件的主方法。
Not from ant's junit task.
You best write a main method that runs your test suite "manually".
@RunWith 注释可能会有所帮助(通过一些次要的 API 最佳实践违规):您提供自己的 Runner,并覆盖
run(RunNotifier notifier)
。通过 RunNotifier,您可以使用 add*Listener-API,该 API 目前仅标记为内部。祝你好运!A @RunWith annotation could help (with some minor API best-practice violations): you give your own Runner, and override
run(RunNotifier notifier)
. Through the RunNotifier, you may use the add*Listener-API, which is marked as internal only currently. Good luck!这有点晚了,但您可以尝试将
RunListener
包装到 ant 的JUnitResultFormatter
中(来自org.apache.ant:ant-junit
):请参阅 https:// /mail-archives.apache.org/mod_mbox/ant-user/201009.mbox/%3C86A2FB65A5F8B549A8E8939DC00F8269332B4A@exchange03.nexus.commercehub.com%3E
This is a bit late, but you might try wrapping your
RunListener
into ant'sJUnitResultFormatter
(fromorg.apache.ant:ant-junit
):See https://mail-archives.apache.org/mod_mbox/ant-user/201009.mbox/%3C86A2FB65A5F8B549A8E8939DC00F8269332B4A@exchange03.nexus.commercehub.com%3E