我在谷歌上搜索了一下,但找不到任何帮助。
我有一个简单的JUnit测试类。Eclipse为我提供了两个选项来在run配置窗口中的Run as JUnit Test
中运行测试类,我看到的是test Runner JUnit 3
或JUnit 4
。这很好用。我的类需要使用JUnit4 runner。
现在,我正试图从Ant JUnit任务中运行这个。然而,在我看来,Ant默认使用JUnit3。我不知道如何设置它来使用JUnit4测试运行程序。我在类路径中只有JUnit4-jar文件,并且我将ant-JUnit4.jar从ant lib文件夹复制到了我的类路径中。显示[junit] Could not find the main class: org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner. Program will exit.
错误。
我还尝试了JUnit4-Ant任务。这表明Junit4没有蚂蚁任务。帮助
编辑:
我只是把ant-junit4.jar放在了ant/lib文件夹中,并删除了junit任务中的incudeantruntime
属性。它工作,但它再次使用Junit3。
编辑
我试着从如下命令运行:
`java -classpath <myclasspath that has JUnit.jar as well> org.junit.runner.JUnitCore com.my.TestClass`
而且效果很好。如何强制ant Junit任务使用此类org.junit.runner.JUnitCore
?
如需其他帮助,
Ant默认使用Junit3测试运行程序。我无法指定ant Junit任务中的测试运行程序。我在这篇文章中使用了类似的变通方法。
感谢@AlexanderMiles
您必须确保在Ant lib文件夹中有JUnit 4。请看一下这个问题:;纯";JUnit 4使用ant 进行测试
来自junit
任务的Ant手册->http://ant.apache.org/manual/Tasks/junit.html
<junit>任务支持嵌套<classpath>表示的元素类似PATH的结构。
从Ant 1.7开始,这个类路径可以用来将junit.jar引用为以及您的测试和测试的代码。
在这里,我将指向junit.jar文件的正确版本。
使用依赖关系管理器工具,如Ivy或Maven(是的,您可以仅针对依赖关系使用Maven)会很有帮助,因此您不必将正确版本的二进制junit-jar文件提交到代码库中。