GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So richten Sie Selenium mit ChromeDriver unter Debian 10/9/8 ein

Dieses Tutorial hilft Ihnen bei der Einrichtung von Selenium mit ChromeDriver unter Debian 9 und Debian 8. Dieses Tutorial enthält auch ein Beispiel für ein Java-Programm, das den eigenständigen Selenium-Server und ChromeDriver verwendet und einen Beispieltestfall ausführt.

Xvfb (X Virtual Framebuffer) ist ein In-Memory-Anzeigeserver für ein UNIX-ähnliches Betriebssystem (z. B. Linux). Es implementiert das X11-Anzeigeserverprotokoll ohne Anzeige. Dies ist hilfreich für CLI-Anwendungen wie den CI-Dienst.

Schritt 1 – Voraussetzungen

Melden Sie sich als sudo-privilegierter Benutzer bei Ihrem Debian-System an und führen Sie die folgenden Befehle aus, um die erforderlichen Pakete auf Ihrem System zu installieren.

sudo apt-get update
sudo apt-get install -y curl unzip xvfb libxi6 libgconf-2-4

Installieren Sie außerdem Java auf Ihrem System. Verwenden Sie den folgenden Befehl, um OpenJDK auf Ihrem System zu installieren. Wenn Sie Oracle Java 8 auf Ihrem Debian-System installieren möchten.

sudo apt-get install default-jdk 

Schritt 2 – Google Chrome installieren

Installieren Sie jetzt das neueste Google Chrome auf Ihrem Debian-System mit den folgenden Befehlen. Die Headless-Funktion von Google Chrome öffnet mehrere Türen für die Automatisierung.

sudo curl -sS -o - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
sudo echo "deb [arch=amd64]  http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list
sudo apt-get -y update
sudo apt-get -y install google-chrome-stable

Schritt 3 – ChromeDriver installieren

ChromeDriver ist ein eigenständiger Server, der das Wire-Protokoll von WebDriver für Chromium implementiert. Der WebDriver ist ein Open-Source-Tool zum automatisierten Testen von Web-Apps in mehreren Browsern.

wget https://chromedriver.storage.googleapis.com/2.41/chromedriver_linux64.zip
unzip chromedriver_linux64.zip

Den neuesten ChromeDriver finden Sie auf der offiziellen Download-Seite. Führen Sie nun die folgenden Befehle aus, um ChromeDriver auf Ihrem System zu konfigurieren.

sudo mv chromedriver /usr/bin/chromedriver
sudo chown root:root /usr/bin/chromedriver
sudo chmod +x /usr/bin/chromedriver

Schritt 4 – Erforderliche JAR-Dateien herunterladen

Der Selenium Server ist erforderlich, um Remote Selenium WebDrivers auszuführen. Sie müssen die JAR-Datei des eigenständigen Selenium-Servers mit den folgenden Befehlen herunterladen oder hier klicken, um die neueste Version der JAR-Datei zu finden.

wget https://selenium-release.storage.googleapis.com/3.13/selenium-server-standalone-3.13.0.jar

Laden Sie außerdem die Datei testng-6.8.7.jar auf Ihr System herunter.

wget http://www.java2s.com/Code/JarDownload/testng/testng-6.8.7.jar.zip
unzip testng-6.8.7.jar.zip

Schritt 5 – Chrome über Selenium Server starten

Ihr Server-Setup ist fertig. Starten Sie Chrome über einen eigenständigen Selenium-Server mit dem Xvfb-Dienstprogramm.

Chrome über Selenium Server ausführen

xvfb-run java -Dwebdriver.chrome.driver=/usr/bin/chromedriver -jar selenium-server-standalone.jar

Verwenden Sie -debug Option am Ende des Befehls, um den Server im Debug-Modus zu starten.

Sie können auch Headless ChromeDriver starten indem Sie den folgenden Befehl auf dem Terminal eingeben.

chromedriver --url-base=/wd/hub

Ihr Selenium-Server läuft jetzt mit Chrome. Verwenden Sie diesen Server, um Ihre in Selen geschriebenen Testfälle mit dem Google Chrome-Webbrowser auszuführen. Der nächste Schritt ist ein optionaler Schritt und hängt nicht von Schritt 5 ab.

Schritt 6 – Java-Beispielprogramm (optional)

Dies ist ein optionaler Schritt. Es beschreibt die Ausführung eines einzelnen Testfalls mit dem eigenständigen Selenium-Server und ChromeDriver. Lassen Sie uns ein Java-Programm mit dem Selenium-Server und dem Chrome-Treiber erstellen. Dieses Java-Programm öffnet eine angegebene Website-URL und prüft, ob eine definierte Zeichenfolge auf der Webseite vorhanden ist oder nicht.

Erstellen Sie ein Java-Programm, indem Sie eine Datei im Texteditor bearbeiten.

vim TecAdminSeleniumTest.java

Fügen Sie der Datei den folgenden Inhalt hinzu.

Java
123456789101112131415161718192021222324252627 import java.io.IOException; org.openqa.selenium.WebDriver importieren; org.openqa.selenium.chrome.ChromeOptions importieren; org.openqa.selenium.chrome.ChromeDriver importieren; org.testng.annotations.Test importieren; public class TecAdminSeleniumTest { public static void main(String[] args) löst IOException, InterruptedException { System.setProperty("webdriver.chrome.driver", "/usr/bin/chromedriver"); ChromeOptions chromeOptions =neue ChromeOptions(); chromeOptions.addArguments("--headless"); chromeOptions.addArguments("--no-sandbox"); WebDriver-Treiber =neuer ChromeDriver (chromeOptions); driver.get("https://google.com"); Thread.sleep (1000); if (driver.getPageSource().contains("Ich fühle mich glücklich")) { System.out.println("Pass"); } Else {System.out.println("Fail"); } Fahrer. Beenden (); }}

Sie können die URL „https://google.com“ durch eine beliebige andere URL Ihrer Wahl ersetzen. Ändern Sie dann auch die Suchzeichenfolge wie „I’m Feeling Lucky“, die im obigen Java-Programm verwendet wird. Speichern Sie Ihr Java-Programm und führen Sie es aus. Zuerst müssen Sie die Java-Umgebungsvariable CLASSPATH einschließlich selenium-server-standalone.jar und testng-6.8.7.jar festlegen. Kompilieren Sie dann das Java-Programm und führen Sie es aus.

export CLASSPATH=".:selenium-server-standalone.jar:testng-6.8.7.jar"
javac TecAdminSeleniumTest.java
java TecAdminSeleniumTest

Sie werden Ergebnisse wie unten sehen. Wenn die definierte Suchzeichenfolge gefunden wird, erhalten Sie die Meldung „Bestanden“, und wenn die Zeichenfolge auf der Webseite nicht gefunden wird, erhalten Sie die Meldung „Fail“ auf dem Bildschirm.


Debian
  1. So richten Sie den Rsyslog-Server unter Debian 11 ein

  2. So installieren Sie Entwicklungstools unter Debian 10/9/8

  3. So installieren Sie Apache Maven unter Debian 10/9/8

  4. So installieren Sie Grunt unter Debian 9/8

  5. So installieren Sie RabbitMQ Server unter Debian 9/8

So installieren Sie Jenkins unter Debian 10/9/8

Ersteinrichtung des Servers mit Debian 10/9/8

Ersteinrichtung des Servers mit Debian 11

So konfigurieren Sie LAMP mit Debian 11

So konfigurieren Sie Samba Server mit Debian 11

So richten Sie den OpenLDAP-Server unter Debian 10 ein