2017-02-16 7 views
-1

Kann keine funktionierende Lösung für dieses Problem finden, ich verstehe, dass es zuvor gefragt wurde.TestNG - ERROR - Java - MAC

Mit Eclipse auf Mac, TestNG mit Java. Eclipse lässt Testsuite perfekt in IDE laufen. Beim Versuch, über die Kommandozeile zu laufen, laufe ich in die folgenden Fehler:

[TestNG] [ERROR] 
    Cannot find class in classpath: firefoxScripts.SmallRwyLengthChange 

Hier ein Screenshot der IDE-Umgebung ist: Hier wird die Ordnerstruktur von Finder:

Screen shot of Finder's folder structure, and eclipse view

von Terminal, hier ist die "Learn-Automation/.classpath" Datei, die ich bearbeitet haben:

<?xml version="1.0" encoding="UTF-8"?> 
    <classpath> 
    <classpathentry kind="src" path="src"/> 
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> 
    <classpathentry kind="lib" path="/Users/bryan.lee/Documents/selenium-server-standalone-3.0.1.jar"/> 
    <classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/> 
    <classpathentry kind="bin" path="/Users/bryan.lee/Documents/workspace/Learn-Automation/bin/firefoxScripts/SmallRwyLengthChange.class"/> 
    <classpathentry kind="lib" path="/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/jcommander-1.7.jar"/> 
    <classpathentry kind="lib" path="/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/selenium-html-runner-3.0.1.jar"/> 
    <classpathentry kind="lib" path="/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/testng-6.9.9.jar"/> 
    <classpathentry kind="lib" path="/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/selenium-server-standalone-3.0.1.jar"/> 
    <classpathentry kind="output" path="bin"/> 
    </classpath> 

Schließlich ist der Befehl, den ich führen Sie den Testfall

java -cp /Users/bryan.lee/Documents/workspace/Learn-Automation/lib/testng-6.9.9.jar:/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/jcommander-1.7.jar org.testng.Testng testng.xml 

Für mich ist der Klassenpfad richtig eingestellt ist, um zu versuchen und zu initialisieren, so bin ich nicht sicher, warum es nicht die Klasse „smallrwylengthchange“ erkennen. Und wie gesagt, es läuft in der Eclipse IDE einwandfrei. Wenn ich also einfach in die Befehlszeile übersetze, denke ich, dass mir etwas Kleines fehlt, wie zum Beispiel den Speicherort der Datei? Jede Hilfe wird geschätzt.

+0

Sind Sie in der Lage, die Eclipse-IDE-Befehl zu sagen, ausführt? –

+0

Ich bin nicht so vertraut mit Eclipse, hat die Konsole dies, bevor das Protokoll der TestNG ausgeführt wird: /private/var/folders/wj/hf7_2fk163l006nxqnm30s05k61rx8/T/testng-eclipse--1232541245/testng-customsuite.xml – NewProgrammer686

Antwort

0

Ihre Befehlszeile enthält TestNG-Abhängigkeiten, aber wo sind Ihre Klassen?

Versuchen mit:

java -cp /Users/bryan.lee/Documents/workspace/Learn-Automation/bin/:/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/testng-6.9.9.jar:/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/jcommander-1.7.jar org.testng.Testng testng.xml

+0

Groß Punkt, ich kopierte den falschen Befehl in. Mein älterer Befehl war jedoch die Class-Datei bis zur Erweiterung .class einzuschließen. Ich glaube, das ist falsch und haben das Problem erkannt. +1 für den Vorschlag – NewProgrammer686

0

So fand ich eine Lösung, ich denke, meine .classpath Datei falsch war.

hat die folgenden Schritte:

  1. cd in den Ordner, der "testng.xml"

  2. Export Classpath-Befehl mit dem Selen-server.jar hat, und die testng-6.9.9 .jar, sowie die LOCATION der Klassendatei "/ bin". Zuvor hatte ich die gesamte Datei eingebunden und das funktionierte nicht, nur der Ordner der Klasse und es scheint zu funktionieren. Code unten getrennt auf „:“ zur besseren Lesbarkeit

    export CLASSPATH=/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/testng-6.9.9.jar 
    :/Users/bryan.lee/Documents/workspace/Learn-Automation/lib/selenium-server-standalone-3.0.1.jar 
    :/Users/bryan.lee/Documents/workspace/Learn-Automation/bin