9 Stimmen

Wie starte ich Selenium IDE von der Befehlszeile aus mit einem bestimmten Testfall geladen?

Ich benutze Windows und möchte Firefox und die Selenium IDE starten, wobei ein bestimmter Testfall geladen und bereit zum Abspielen ist.

Ich bin so weit gekommen:

>"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -chrome "chrome://selenium-ide/content"

das startet Firefox und die IDE, aber ich weiß nicht genug über die Selenium IDE oder Chrome, um weiterzukommen. Ich würde etwas wie:

>"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -chrome "chrome://selenium-ide/content?test=foo.html"

erwarten, dass das unterstützt wird, aber ich finde nicht die richtige Beschwörung.

Zur Hintergrundinformation: Ich generiere Testfallvorlagen aus einer Swing-Anwendung und möchte sie einfach in Firefox zum Modifizieren und Ausführen mit einem einzigen Tastendruck einfügen. Falls es einen einfacheren Weg gibt, das zu tun, als Runtime.getRuntime.exec(theAbove), dann bin ich ganz Ohr.

0 Stimmen

Ich bin ein wenig verwirrt über die Notwendigkeit, dass sie zuerst von einem Menschen überprüft werden. Was ist Ihr ultimatives Ziel?

0 Stimmen

Entschuldigung, das kann ich nicht sagen. Es reicht zu sagen, dass ja, ich wirklich benötige, dass ein Mensch sie bearbeitet, bevor sie ausgeführt werden, um Schritte hinzuzufügen, die von den Umständen abhängen. Die Swing-App generiert eine Menge Standardcode, um Zeit zu sparen.

0 Stimmen

Das könnte eine gute Referenz sein: kb.mozillazine.org/Command_line_arguments

10voto

Pradeep Punkte 4009

Sie sind nah dran. Selenium verfügt über eine integrierte Seite zum automatischen Laden und Ausführen von Tests aus einer Testsuite namens TestRunner.html. Sie können es wie folgt aufrufen :

C:\Program Files\Mozilla Firefox\firefox.exe" -chrome "chrome://selenium-ide/content/selenium-core/TestRunner.html?baseUrl=http://[BASEURL]&test=file:///[TESTSUITE-PATH]&auto=false"

Dadurch wird Firefox gestartet und alle Tests aus der Testsuite im angegebenen Pfad werden geladen und warten darauf, mit einem einzigen Tastendruck ausgeführt zu werden.

Zum Beispiel

Nachdem Sie ein paar Selenium-Tests erstellt haben, speichern Sie die Testfälle als testcase1.html und testcase2.html in einem Ordner, sagen wir c:\tests.

Speichern Sie die Testsuite als testsuite.html im selben Ordner. Jetzt können Sie diese Testreihe mit dem folgenden Befehlszeilenbefehl starten :

C:\Program Files\Mozilla Firefox\firefox.exe" -chrome "chrome://selenium-ide/content/selenium-core/TestRunner.html?baseUrl=http://localhost&test=file:///C:\tests\testsuite.html&auto=false"

Sie sollten die Tests in Firefox geladen haben und bereit sein, ausgeführt zu werden.

Wenn Sie die obige URL ändern, um den Auto-Parameter auf true zu setzen, werden die Tests auch nach dem Start ausgeführt.

&auto=true

BEARBEITEN :

Aktualisierte baseurl Argument in korrekter Groß- und Kleinschreibung: baseUrl

Aktualisierter Pfad zu TestRunner.html zu: chrome://selenium-ide/content/selenium-core/TestRunner.html

0 Stimmen

Entschuldigung, ich hätte klarer sein sollen. Ich kann die Tests nicht sofort ausführen. Sie benötigen zuerst etwas manuelle Bearbeitung, was bedeutet, dass ich sie in die IDE laden muss, bevor ich sie ausführe. Ich sehe nicht, wie ich vom TestRunner zur IDE gelangen soll.

1 Stimmen

Bah, zu früh abgeschickt. Ich meinte zu sagen "Ich kann die Tests nicht sofort ausführen."

0 Stimmen

Ich habe mir die XUL-Dateien angesehen, die das Selenium-IDE in der Erweiterungs-XPI ausmachen, und sie laden die Testdateien nicht als URL-Parameter. Wenn du möchtest, kannst du das XUL anpassen und ein Skript schreiben, um aus den URL-Parametern zu lesen und es dann wie oben aufrufen.

6voto

Freek Borgerink Punkte 61

Wenn Sie eine Testsuite mit Firefox von der Befehlszeile ausführen möchten, müssen Sie Java starten, nicht Firefox. Wie folgt:

C:\Program Files (x86)\Java\jre6\bin\java.exe" -jar c:\seltest\selenium-server-standalone-2.18.0.jar -htmlSuite "*firefox" "http://127.0.0.1" "c:\seltest\mytestsuite.html" "c:\seltest\logs\results-firefox.html" -port 5555

-- Freek Borgerink

0 Stimmen

Vielleicht wird dies nicht mehr in Selenium 3 unterstützt (das einen separaten Webdriver erfordert). java -jar selenium-server-standalone-3.0.0-beta2.jar -help gibt keine -htmlSuite-Option zurück, und Ihr Befehlszeilenbefehl gibt eine Ausnahme zurück.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X