我正在尝试运行我在 IntelliJ 中创建的测试类。当我在 IntelliJ 中运行它时,测试通过了。但是,我希望能够编写脚本,因此我尝试通过命令行运行测试。
我正在从此目录运行以下命令:$PROJECT_HOME/output/test/com/proj1/ome
java -cp .:$PROJECT_HOME/tools/junit4.11.jar:$PROJECT_HOME/tools/hamcrest-all-1.3.jar org.junit.runner.JUnitCore ClassATest
它给了我以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: ClassATest (wrong name: com/proj1/ome/ClassATest)
我读到这是因为您无法从包内运行该项目。所以我进入了底层(我读到的 Stack Overflow 帖子推荐的)并从那里开始尝试。所以现在我从此目录运行以下命令:$PROJECT_HOME/output/test/com
java -cp .:/$PROJECT_HOME/tools/junit4.11.jar:$PROJECT_HOME/tools/hamcrest-all-1.3.jar org.junit.runner.JUnitCore ClassATest
java -cp .:/$PROJECT_HOME/tools/junit4.11.jar:$PROJECT_HOME/tools/hamcrest-all-1.3.jar org.junit.runner.JUnitCore proj1/ome/ClassATest
这些给了我以下输出
JUnit version 4.11
Could not find class: ClassATest
Time: 0.001
OK (0 tests)
然后我尝试再下一个目录并再次尝试,但得到了相同的结果。
任何关于我哪里出错的想法将不胜感激。
谢谢
最佳答案
您应该位于 $PROJECT_HOME/output/test 目录中。然后运行:
java -cp .:/$PROJECT_HOME/tools/junit4.11.jar:$PROJECT_HOME/tools/hamcrest-all-1.3.jar org.junit.runner.JUnitCore com.proj1.ome.ClassATest
关于Java JUnit 测试找不到类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20082885/