Heim > Java > javaLernprogramm > Hauptteil

Wie kann ich JavaScript-Code im Selenium WebDriver von Java ausführen?

Susan Sarandon
Freigeben: 2024-10-24 21:23:29
Original
309 Leute haben es durchsucht

How can I execute JavaScript code within Java's Selenium WebDriver?

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>
Nach dem Login kopieren

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>
Nach dem Login kopieren

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:

  1. Ein WebElement zurückgeben:
<code class="java">js.executeScript("return document.getElementById('someId');");</code>
Nach dem Login kopieren
  1. Einen Rahmen hinzufügen ein WebElement:
<code class="java">WebElement element = driver.findElement(By.anything("tada"));
js.executeScript("arguments[0].style.border='3px solid red'", element);</code>
Nach dem Login kopieren
  1. Eingabeelemente in Optionsfelder ändern:
<code class="java">js.executeScript(
         "var inputs = document.getElementsByTagName('input');" +
         "for(var i = 0; i < inputs.length; i++) { " +
         "    inputs[i].type = 'radio';" +
         "}" );</code>
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!