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:
<code class="java">WebDriver driver = new AnyDriverYouWant(); if (driver instanceof JavascriptExecutor) { ((JavascriptExecutor)driver).executeScript("yourScript();"); } else { throw new IllegalStateException("This driver does not support JavaScript!"); }</code>
Alternativ können Sie Folgendes in Betracht ziehen:
<code class="java">WebDriver driver = new AnyDriverYouWant(); JavascriptExecutor js; if (driver instanceof JavascriptExecutor) { js = (JavascriptExecutor)driver; } // else throw... // later on... js.executeScript("return document.getElementById('someId');");</code>
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:
<code class="java">js.executeScript("return document.getElementById('someId');");</code>
<code class="java">WebElement element = driver.findElement(By.anything("tada")); js.executeScript("arguments[0].style.border='3px solid red'", element);</code>
<code class="java">js.executeScript( "var inputs = document.getElementsByTagName('input');" + "for(var i = 0; i < inputs.length; i++) { " + " inputs[i].type = 'radio';" + "}" );</code>
Das obige ist der detaillierte Inhalt vonWie führe ich JavaScript-Code von Java WebDriver aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!