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:
js.executeScript("return document.getElementById('someId');");
WebElement element = driver.findElement(By.anything("tada"));
js.executeScript("arguments[0].style.border='3px solid red'", element);
js.executeScript(
"var inputs = document.getElementsByTagName('input');"
"for(var i = 0; i
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