2017-01-27 5 views
2

Ich habe diesen Link geprüft:Wie spock test von der Kommandozeile aus ausgeführt werden?

https://gist.github.com/ysb33r/5825457

Es scheint so, dass es wie folgt ausgeführt werden können:

groovyc *.groovy 

java -cp ~/.grapes/org.spockframework/spock-core/jars/spock-core-0.7-groovy-2.0.jar:$GROOVY_HOME/embeddable/groovy-all-2.1.4.jar:$GROOVY_HOME/lib/junit-4.11.jar:$GROOVY_HOME/lib/hamcrest-core-1.3.jar:.org.junit.runner.JUnitCore ExampleSpec 

Und ich habe alle dritten Teil Gläser zu CLASSPATH hinzugefügt, so dass alle Einfuhren aus

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: 
LoginTest.groovy: 11: unable to resolve class com.vsi.icareos.client.home.HomePage 
@ line 11, column 1. 
import com.vsi.icareos.client.home.HomePage 
^ 

LoginTest.groovy: 22: unable to resolve class LoginByPwdPage 
@ line 22, column 2. 
LoginByPwdPage loginPage 
^ 

LoginTest.groovy: 35: unable to resolve class LoginByPwdPage 
    @ line 35, column 13. 
     loginPage=new LoginByPwdPage(browser,Consts.PAGE_ID) 
     ^
3 errors 

ich denke: diese libs found.But alle meine eigenen Klassen können nicht so gefunden, und die Fehlermeldung werden dass die Option wie: - Quellpfad benötigt wird, aber ich fand diese Befehlsoption veraltet, so wie dieses Problem zu lösen?

+0

Verwenden Sie jede Form von Build-Tool? Es ist ein bisschen Arbeit für den Anfang, aber rettet Sie von all dem Unsinn auf lange Sicht. Ich benutze Gradle, aber es gibt auch Maven und Ant –

+0

@ tim_yates, noch nicht, gerade jetzt, ich möchte nur eine einzige Spezifikation ausführen. –

+0

Wenn Sie Gradle verwenden, können Sie dies mit "grddle test - testet your.packages.SomeSpecificSpec" tun –

Antwort

1

konnte ich die Tests im Kern beschrieben laufen, aber mit einer Modifikation der groovyc die -cp Flagge mit spock Glas, um es hinzuzufügen, auch wenn Sie die Quellen in Unterverzeichnissen haben, sollten Sie **/*.groovy anstelle von *.groovy

auf dem Weg der Suche Sie den java Befehl ausführen, nähte es einen Raum zwischen . und org.junit.runner.JUnitCore

Also statt

java -cp ~/.grapes/org.spockframework/spock-core/jars/spock-core-0.7-groovy-2.0.jar:$GROOVY_HOME/embeddable/groovy-all-2.1.4.jar:$GROOVY_HOME/lib/junit-4.11.jar:$GROOVY_HOME/lib/hamcrest-core-1.3.jar:.org.junit.runner.JUnitCore ExampleSpec 
zu fehlen

sollte ich

java -cp ~/.grapes/org.spockframework/spock-core/jars/spock-core-0.7-groovy-2.0.jar:$GROOVY_HOME/embeddable/groovy-all-2.1.4.jar:$GROOVY_HOME/lib/junit-4.11.jar:$GROOVY_HOME/lib/hamcrest-core-1.3.jar:. org.junit.runner.JUnitCore ExampleSpec 

Bitte beachten Sie den Raum in der Sekunde. Die . wird das aktuelle Verzeichnis auf die

Hoffnung Classpath hinzugefügt, das hilft

Verwandte Themen