JUnit: 4.8.1 “Could not find class”

早过忘川 提交于 2019-12-23 14:59:30

问题


Ok, I am like other and new to jUnit and having a difficult time trying to get it working. I have searched the forum but the answers provided; I am just not getting. If anyone out there could lend me a hand I would greatly appreciate it.

Let me provide the basics: OS: mac OS X.6

export JUNIT_HOME="/Developer/junit/junit4.8.1"
export CVSROOT="/opt/cvsroot"
export PATH="/usr/local/bin:/usr/local/sbin:/usr/localmysql/bin:/opt/PalmSDK/Current/bin/:/usr/local/mysql/bin:$PATH:$JUNIT_HOME:$CVSROOT"
export CLASSPATH="$CLASSPATH:$JUNIT_HOME/junit-4.8.1.jar:$JUNIT_HOME"

I can compile a test class from a java file, however when I try to then run the test

java org.junit.runner.JUnitCore MyTest.class 

I get the following:

JUnit version 4.8.1
Could not find class: MyTest.class

Time: 0.001

OK (0 tests)

Now I have been in the directory with the MyTest.class which is just somewhere in my file system, I tried moving the source folder to the junit folder and the junit/junit4.8.1 folder and the same result. I cannot even run the tests that came with junit.


回答1:


Is MyTest really in the default package? If not, then you need to give the entire package-qualified name. In other words, if MyClass has a statement

package com.myself;

and lives in

/myproject/src/com/myself/MyClass.java

and you compiled into

/myproject/classes

then /myproject/classes must be on your CLASSPATH and you must

java org.junit.runner.JUnitCore com.myself.MyTest

Come to think of it, I see now that you're appending .class to the class name, so even if it's in the default package, you should just say

java org.junit.runner.JUnitCore MyTest



回答2:


Remove .class from MyTest.class i.e. java org.junit.runner.JUnitCore MyTest




回答3:


It is not having problems finding JUnit -- it is finding that okay. It can't find MyClass, so the directory of that class (given that it is packageless) needs to be in the classpath.



来源:https://stackoverflow.com/questions/2472408/junit-4-8-1-could-not-find-class

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!