„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie führe ich JavaScript-Code von Java WebDriver aus?

Wie führe ich JavaScript-Code von Java WebDriver aus?

Veröffentlicht am 08.11.2024
Durchsuche:416

How do I Execute JavaScript code from Java WebDriver?

Ausführen von WebDriver-JavaScript aus Java: Eine erweiterte Anleitung

Der in der Frage erwähnte Befehl ./go webdriverjs ist ein Shell-Befehl, der entwickelt wurde um die WebDriverJs-Umgebung in einem bestimmten Ordner einzurichten und zu initialisieren. Es ist jedoch wichtig zu beachten, dass es sich bei WebDriverJs um eine Sprachbindung handelt, die JavaScript-Tests ermöglicht, anstatt JavaScript-Snippets aus Java auszuführen.

Um JavaScript-Code in Java WebDriver auszuführen, verwenden Sie den folgenden Ansatz:

WebDriver driver = new AnyDriverYouWant();
if (driver instanceof JavascriptExecutor) {
    ((JavascriptExecutor)driver).executeScript("yourScript();");
} else {
    throw new IllegalStateException("This driver does not support JavaScript!");
}

Alternativ:

WebDriver driver = new AnyDriverYouWant();
JavascriptExecutor js;
if (driver instanceof JavascriptExecutor) {
    js = (JavascriptExecutor)driver;
} // else throw...

// later on...
js.executeScript("return document.getElementById('someId');");

Der JavascriptExecutor bietet umfangreiche Dokumentation und Funktionen. In der MethodeexecuteScript() können Sie Funktionsaufrufe, rohes JS ausführen, Werte zurückgeben und komplexe Argumente übergeben.

Beispiele:

  1. Abrufen eines WebElements wie in drivers.findElement( By.id("someId")):
js.executeScript("return document.getElementById('someId');");
  1. Visualisierung des Randes eines WebElements:
WebElement element = driver.findElement(By.anything("tada"));
js.executeScript("arguments[0].style.border='3px solid red'", element);
  1. Seiteneingaben in Optionsfelder ändern:
js.executeScript(
         "var inputs = document.getElementsByTagName('input');"  
         "for(var i = 0; i 
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3