Wie man eine ausführbare jar-Datei mit IntelliJ von einem Selen/TestNG java-Datei?
Ich ve wurde Googeln für Tage versucht, herauszufinden, wie dies zu tun ist, wenn jemand hat dies getan, bevor, ich wäre sehr dankbar für die Hilfe.
Habe ich ein Automatisierungs-test-Projekt habe ich in IntelliJ, dass automatisiert eine Benutzer-Interaktion mit einer Web Anwendung.
Möchte ich, dass automatisierte test (erstellt in Java unter Verwendung von Selen und TestNG) in eine ausführbare jar-Datei, andere laufen durch einen Doppelklick auf die jar-Datei.
Jedes mal, wenn ich Versuch, erstellen Sie eine jar-Datei, indem Sie im Projekt-Struktur -> Artefakt -> + -> Glas -> Aus den Modulen mit Abhängigkeiten, es endet die Schaffung einer jar, die es behauptet,
"Could not find or load the main class <package.MainClass> "
wenn ich Versuch es mit dem folgenden Befehl:
java -jar MyProject.jar <Manifest Path>
Keine Ahnung warum ich ständig diese Fehlermeldung erhalten, oder haben einen Weg, dies erfolgreich zu tun?
Auch, hier ist meine pom.xml:
<groupId>TestAutomation</groupId>
<artifactId>TestAutomation</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>com.test.automation.Executable</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
<version>2.39.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.40.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.1.1</version>
<scope>test</scope>
</dependency>
</dependencies>
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich endlich kapiert für alle anderen, die passiert zu laufen in dieses problem, so habe ich die jar-Datei erstellt und erfolgreich ausgeführt...
Musste ich meine pom.xml Datei, die der folgenden:
Dann musste ich die Lautstärke meiner main-Methode nicht zu verwenden, alle TestNG-bezogene Aufrufe. Ich könnte zum Beispiel nicht so etwas wie dies für mein main-Methode:
Schließlich, hier sind die Schritte, um die entsprechende jar-Datei erstellt:
Hinweise:
Werden Sie sicher, dass Sie den IE oder den Chrome-Treiber, um Ihre Projekte Ressourcen-Ordner, und rufen Sie es über den code-Ordner, anstatt die Festplatte des Computers. Zum Beispiel dies:
File Datei = new File("src\test\resources\binaries\IEDriverServer.exe");
Nicht dieses:
Erstellen Sie dann das Verzeichnis mit den Treiber in es in das gleiche Verzeichnis, in dem deine jar gespeichert auf Ihrem computer:
2 . Werden Sie sicher, dass, wenn mit IE, dass der Geschützte Modus eingestellt ist, entweder für alle Zonen oder keine von Ihnen (im IE, gehen Sie zu Internet Optionen... > Sicherheit (Registerkarte) "> " Geschützten Modus Aktivieren Kontrollkästchen)