在终端中运行JUnit测试

时间:2014-10-17 01:51:19

标签: java junit terminal

我是从终端运行java的新手,我正在尝试在终端中运行JUnit测试类。我的java类的基本结构是

JavaProject
    Queue.java
    QueueTests.java
    junit.jar
    RunTests

RunTests是一个包含以下代码的脚本。

 #!/bin/sh
 javac Queue.java
 CLASSPATH=".:junit.jar:"; export CLASSPATH
 javac QueueTests.java
 java org.junit.runner.JUnitCore QueueTests

然而,当我运行它时,我总是在线程" main"中得到一个"异常。 java.lang.NoClassDefFoundError"最后一行的错误。如果我注释掉最后一行,则没有错误。因此,似乎无法找到QueueTests.class。但是,查看该文件夹,在运行脚本后很明显Queue.class和QueueTests.class都在那里。我不确定我做错了什么。真的很感激任何帮助。

2 个答案:

答案 0 :(得分:0)

JavaProject文件夹中,执行以下命令:

java -cp .:./junit.jar org.junit.runner.JUnitCore QueueTests

要修改你的脚本,那就是

#!/bin/sh
javac Queue.java QueueTests.java
CLASSPATH=".:junit.jar:"
java -cp $CLASSPATH org.junit.runner.JUnitCore QueueTests   

另见以下问题:How to run JUnit test cases from the command line

答案 1 :(得分:0)

如果你试图在java中学习和试验这样的新东西,而不必加载一个完整/重的IDE,同时不必运行冗长的终端命令,我建议你使用像{{3这样的轻量级Java IDE }}

PS:我假设你是从终端运行,只是为了避免IDE的执行麻烦,以及更快地运行这样的小任务。

Dr Java