[Für Anfänger] Führen Sie Selenium auf Java aus

Was ist Selen?

Es ist ein Tool, das den Browser automatisch bedienen kann. Es wird häufig in Kombination mit Tests verwendet, da es das Benutzerverhalten emulieren kann.

Dinge notwendig

Vorbereitungen

Was zum Download

Laden Sie Selenium herunter

Legen Sie zunächst die erforderlichen Bibliotheken auf der [Download-Seite] von Selenium (http://www.seleniumhq.org/download/) ab.

image.png

Diesmal ist es Java, also klicken Sie auf Javas ** Download **. (Klicken Sie hier, um den Download der Zip-Datei zu starten.)

Entpacken Sie es nach dem Herunterladen.

image.png

** client-kombinierte-3.4.0-nodeps.jar ** ist der Hauptteil von Selenium, und diejenigen unter "lib /" sind die abhängigen Bibliotheken. (Alles unter "lib /" ist auch erforderlich, um Selenium auszuführen.)

Da lib auch JUnit enthält, können Sie es sofort verwenden.

Laden Sie den Chrome-Treiber herunter

Laden Sie den Chrome-Treiber auch vom Chrome-Treiber [Download-Seite] herunter (https://sites.google.com/a/chromium.org/chromedriver/downloads).

Die aktuellste Version (14.06.2017) ist 2.30, also werde ich sie fallen lassen.

image.png

Bitte beachten Sie, dass die unterstützten Chrome-Versionen je nach Chrome-Treiberversion unterschiedlich sind. (Chrome Driver 2.30 ist Chrome v58-60)

image.png

Laden Sie den Chrome-Treiber herunter, der Ihrem Betriebssystem entspricht.

Entpacke die abgelegte Zip und du bist fertig mit dem Herunterladen, was du brauchst!

Führen Sie Selen aus

Projektvorbereitung

Starten Sie Eclipse und erstellen Sie ein neues Projekt. (Der Name ist "Selenprobe".) Zuerst erstellen wir einen Ordner, um abhängige Dateien usw. abzulegen.

image.png

Platzierung abhängiger Dateien

Ich habe einen Ordner (lib) zum Platzieren abhängiger Bibliotheken wie Selenium und einen Ordner (exe) zum Platzieren von Chrome Driver erstellt. Als nächstes platzieren wir die Dateien in jedem Ordner.

image.png

Legen Sie alles unter "lib /" von Selen in den gleichen Ordner.

Übergeben Sie den Erstellungspfad

Als nächstes übergeben wir den Erstellungspfad.

image.png

Übergeben Sie den Erstellungspfad an alle Gläser in lib. ** Vergessen Sie nicht, auf Anwenden zu drücken! ** ** **

Jetzt, da Sie bereit sind, Selenium auszuführen, können Sie es zum Laufen bringen.

Führen Sie Selen aus.

Erstellen Sie eine neue JavaClass in src. (Der Name ist SampleTest.)

Dieses Mal verwenden wir den Beispielcode in Erste Schritte von Chrome Driver.

Ändern Sie nur den Pfad zum Chrome-Treiber.

Java


import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

public class SampleTest {
	@Test
	public void testGoogleSearch() throws InterruptedException {
	  // Optional, if not specified, WebDriver will search your path for chromedriver.
	  System.setProperty("webdriver.chrome.driver", "./exe/chromedriver");

	  WebDriver driver = new ChromeDriver();
	  driver.get("http://www.google.com/xhtml");
	  Thread.sleep(5000);  // Let the user actually see something!
	  WebElement searchBox = driver.findElement(By.name("q"));
	  searchBox.sendKeys("ChromeDriver");
	  searchBox.submit();
	  Thread.sleep(5000);  // Let the user actually see something!
	  driver.quit();
	}
}

Ich denke, dass dies funktionieren wird, wenn Sie es ausführen. Versuch es bitte.

Fehlerbehebung

Selen funktioniert nicht.

Wenn Sie es wie oben beschrieben versuchen und es nicht funktioniert, lesen Sie die Eclipse-Fehlermeldung.

The driver is not executable. (Viele Mac-Leute) Die Ursache ist, dass ChromeDriver keine Ausführungsberechtigung hat. Erteilen Sie daher die Ausführungsberechtigung.

Execution file is not found (Viele Windows-Leute) Wahrscheinlich wird der Pfad nicht übergeben. Stellen Sie den Pfad daher entsprechend ein.

Schließlich

Wenn Sie dieses Repository klonen, können Sie es sofort verwenden. (Beachten Sie, dass der Chrome-Treiber für Mac ist)

Recommended Posts

[Für Anfänger] Führen Sie Selenium auf Java aus
Java-Debug-Ausführung [für Java-Anfänger]
[Java] Grundlegende Aussage für Anfänger
Java für Anfänger, Daten verstecken
Java-Anwendung für Anfänger: Stream
[Für Anfänger] Mindestbeispiel für die Anzeige von RecyclerView in Java
[Für Anfänger] Erläuterung von Klassen, Instanzen und Statik in Java
Führen Sie Java-Anwendungen in Azure Batch aus
Java für Anfänger, Ausdrücke und Operatoren 2
Einstellungen für das SSL-Debugging in Java
[Für Java-Anfänger] Informationen zur Ausnahmebehandlung
Klassen und Instanzen Java für Anfänger
Tipps zum Umgang mit Pseudoelementen in Selen
Führen Sie einen externen Prozess in Java aus
[Für Anfänger] Mindestbeispiel zum Aktualisieren von RecyclerView mit DiffUtils in Java
Wichtige Punkte für die Einführung von gRPC in Java
Lernen Sie aus "Na und", den Grundlagen von Java [für Anfänger]
[Für Anfänger] Unterschied zwischen Java und Kotlin
Lesen Sie die xlsx-Datei in Java mit Selenium
[Für Anfänger] So debuggen Sie mit Eclipse
Für JAVA-Lernen (2018-03-16-01)
Selenprobe (Java)
Änderungen in Java 11
Janken in Java
Selen x Java
2017 IDE für Java
Ich habe EX25 des AtCoder Programming Guide für Anfänger (APG4b) in Java geschrieben.
Umfangsrate in Java
[Java] [Für Anfänger] So fügen Sie Elemente direkt in ein zweidimensionales Array ein
Java für Anweisung
FizzBuzz in Java
[Für Anfänger] Ich habe versucht, DBUnit mit Eclipse zu verwenden
ChatWork4j für die Verwendung der ChatWork-API in Java
[Für Anfänger] Ich habe versucht, JUnit 5 mit Eclipse zu verwenden
Lösung für NetBeans 8.2 funktioniert nicht in Java 9-Umgebung
Erfassen und speichern Sie die Selen-Installation in Java
Eine Sammlung einfacher Fragen für Java-Anfänger
Stellen Sie mit vim die Popup-Anzeige für die Java-Sprache ein.
[Einführung in Java] Grundlagen der Java-Arithmetik (für Anfänger)
Verwenden wir Java New FileIO! (Einführung für Anfänger)
Führen Sie jetzt Dataflow, Java, Streaming aus
[Java-Anfängerangst] In Junit implementierter schwer zu testender Code
Vergleichen Sie die PDF-Ausgabe in Java für Snapshot-Tests
Aktivieren / Deaktivieren von SNI in Java für jede Kommunikation
Punkte, die bei Java beachtet werden müssen, sind gleich
Kommen Sie mit Java-Containern in Cloud Run zurecht
[Java] für Anweisung, während Anweisung
Lesen Sie JSON in Java
Machen Sie einen Blackjack mit Java
Einschränkungsprogrammierung in Java
Setzen Sie Java8 in Centos7
NVL-artiger Typ in Java
Verbinden Sie Arrays in Java
"Hallo Welt" in Java
Aufrufbare Schnittstelle in Java
[Für Anfänger] DI ~ Die Grundlagen von DI und DI im Frühjahr ~
[Java] Paket für die Verwaltung