类加载问题JUnit 4.11

时间:2014-07-31 16:33:48

标签: java junit

我正在尝试JUnit 4.11。我在JUnit FooTest.java上提供了这个样本

public class FooTest{

  @Test
  public void thisAlwaysPass(){
  }

}

我在/usr/lib/jvm/java/jre/lib/ext

有JUnit 4.11 jar和Hamcrest jar

现在,当我运行以下命令时,它表示无法找到该类。

$ java -cp . org.junit.runner.JUnitCore FooTest
JUnit version 4.11

could not find class : FooTest

Time : 0.002

OK (0 Tests)

我认为classpath存在一些问题。所以我试过没有JUnit,它说主要缺少:

$ java -cp . FooTest
Error: main method not found in FooTest

因此Java能够加载该类。但是当我尝试使用JUnit运行时,它无法找到该类。我对java类加载有基本的了解。我在这里错过了JUnit的东西吗?

我正在使用Fedora 17& OpenJDK 1.7

1 个答案:

答案 0 :(得分:0)

我的猜测是什么。 FooTest不在类路径中。 试试这个

java -cp pathtojunit\junit-4.11.jar;pathtohamcrest\hamcrest.jar;pathto\FooTest.class; 
orj.junit.runner.JUnitCore FooTest

或者您可以将所有的jar和测试类放在一个文件夹中,例如c:\ junittest \并试试这个

javac -cp c:\junittest\*; FooTest.java
java -cp c:\junittest\*; org.junit.runner.JUnitCore FooTest