Frage

Ok, ich bin wie andere und neue zu jUnit und eine schwierige Zeit versucht, es zum Laufen zu bringen. Ich habe im Forum gesucht aber die Antworten zur Verfügung gestellt; Ich bin einfach nicht bekommen. Wenn jemand da draußen mir eine Hand geben könnte, würde ich es sehr schätzen.

Lassen Sie mich die Grundlagen liefern: Betriebssystem: 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"

Ich kann eine Test-Klasse aus einer Java-Datei kompilieren, aber wenn ich versuche, dann führen Sie den Test

java org.junit.runner.JUnitCore MyTest.class 

Ich erhalte die folgende:

JUnit version 4.8.1
Could not find class: MyTest.class

Time: 0.001

OK (0 tests)

Jetzt mit dem MyTest.class im Verzeichnis gewesen, die nur irgendwo in meinem Dateisystem Ich habe, habe ich versucht, den Quellordner in den junit Ordner zu verschieben und die junit/junit4.8.1 Ordner und das gleiche Ergebnis. Ich kann nicht einmal die Tests ausführen, die mit junit kam.

War es hilfreich?

Lösung

Ist MyTest wirklich in dem Standard-Paket? Wenn nicht, dann müssen Sie das gesamte Paket qualifizierten Namen geben. Mit anderen Worten, wenn MyClass hat eine Erklärung

package com.myself;

und lebt in

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

und Sie zusammengestellt in

/myproject/classes

dann muss /myproject/classes auf Ihrem CLASSPATH sein und Sie müssen

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

Kommen Sie, daran zu denken, ich sehe jetzt, dass Sie .class den Klassennamen sind anhängen, so dass selbst wenn es in dem Standard-Paket ist, sollten Sie nur sagen,

java org.junit.runner.JUnitCore MyTest

Andere Tipps

Entfernen .class- von MyTest.class d java org.junit.runner.JUnitCore MyTest

Es ist nicht mit Problemen JUnit zu finden - es ist das okay findet. Es kann nicht MyClass finden, so das Verzeichnis der Klasse (vorausgesetzt, dass sie gehäuse ist) muss im Classpath sein.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top