从命令行进行JUnit测试

时间:2014-01-31 16:45:31

标签: java command-line junit

我正在尝试从命令行运行JUnit 4测试。这是我目前的命令:

java -cp C:\Users\some\.m2\repository\junit\junit\4.11\junit-4.11.jar junit.textui.TestRunner C:\Some\Path\target\test-classes\com\wicket\range\ui\MyTest.class

这会给出一个未找到类的错误。

我也尝试了以下内容:

C:\Some\Path\target\test-classes>java -cp C:\Users\some\.m2\repository\junit\junit\4.11\junit-4.11.jar junit.textui.TestRunner com.wicket.range.MyTest.class

这也给出了一个未找到类的错误;这可能是什么问题?

2 个答案:

答案 0 :(得分:2)

我假设您的测试类位于C:\ Some \ Path \ target \ test-classes(在相应的子目录中)。你的命令只有junit。它还需要测试和其他依赖项的类路径。

尝试

java -cp C:\Some\Path\target\test-classes;C:\Users\some\.m2\repository\junit\junit\4.11\junit-4.11.jar junit.textui.TestRunner com.wicket.range.MyTest.class

答案 1 :(得分:1)

看起来你正在使用Maven(在你的类路径中看到“.m2”)。怎么样..

cd <location of pom.xml>
mvn -Dtest=MyTest test

当然,它可能需要一段时间才能运行你的测试并且它不会使用JUnit的文本ui runner,但它应该运行你的测试而不必担心ClassNotFoundException。之后检查target \ surefire-reports中的文件以获取测试结果。猜猜这取决于你的目标究竟是什么。

否则,Jayan的答案看起来对我来说是正确的。为了他的工作,我想你想先#

cd C:\Some\Path\target\test-classes