Heim >Java >javaLernprogramm >Wie kann ich JavaScript-Code im Selenium WebDriver von Java ausführen?
JavaScript mit Selenium WebDriver Java verwenden
Sie sind daran interessiert, JavaScript mit WebDriver (Selenium 2) über Java zu nutzen.
Speicherort der Befehlsausführung
Der von Ihnen genannte Befehl „$ ./go webdriverjs“ sollte aus dem Verzeichnis ausgeführt werden, in dem sich das WebDriverJs-Projekt befindet.
JavaScript in WebDriver integrieren
Beachten Sie jedoch, dass WebDriverJs eine separate Sprachbindung für WebDriver ist, die die Testerstellung in JavaScript ermöglicht. Um JavaScript in Javas WebDriver auszuführen, befolgen Sie diese Schritte:
<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:
<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>
Die MethodeexecuteScript() akzeptiert sowohl Funktionsaufrufe als auch einfachen JavaScript-Code. Es bietet die Möglichkeit, Werte zurückzugeben und komplexe Argumente zu übergeben, wie in diesen Beispielen gezeigt:
<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 kann ich JavaScript-Code im Selenium WebDriver von Java ausführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!