Heim  >  Artikel  >  Java  >  Wie führe ich JavaScript-Code mit WebDriver in Java aus?

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

Barbara Streisand
Barbara StreisandOriginal
2024-10-24 18:46:21894Durchsuche

How to Execute JavaScript Code with WebDriver in Java?

JavaScript mit WebDriver in Java ausführen

Die Integration von JavaScript mit WebDriver (Selenium 2) mit Java bietet erweiterte Testmöglichkeiten. Befolgen Sie die Richtlinien auf der Seite „Erste Schritte“. Es ist wichtig zu verstehen, von welchem ​​Ort aus der Befehl „./go webdriverjs“ ausgeführt werden soll.

Antwort:

Die Ausführung Der Befehl „./go webdriverjs“ erfordert keine Ausführung in einem bestimmten Ordner. Dieser Befehl wird normalerweise verwendet, wenn Sie JavaScript-Tests mit WebDriverJs ausführen möchten, einer zusätzlichen Sprachbindung für WebDriver, die das Schreiben von Tests in JavaScript ermöglicht.

Wenn Ihr Ziel jedoch darin besteht, JavaScript-Code innerhalb von Javas WebDriver auszuführen, ist der Der Ansatz ist unterschiedlich. Um JavaScript-Snippets in Ihrem Java WebDriver-Code auszuführen, verwenden Sie Folgendes:

<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 den JavascriptExecutor einer Variablen zur späteren Verwendung zuweisen:

<code class="java">WebDriver driver = new AnyDriverYouWant();
JavascriptExecutor js;
if (driver instanceof JavascriptExecutor) {
    js = (JavascriptExecutor)driver;
}

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

ExecuteScript() Die Methode akzeptiert Funktionsaufrufe und rohes JS, sodass Sie Webelemente bearbeiten und mit der Seite interagieren können. Zum Beispiel:

  • Element anhand der ID suchen:

    <code class="java">js.executeScript("return document.getElementById('someId');");</code>
  • Fügen Sie einen Rahmen zu einem hinzu Element:

    <code class="java">WebElement element = driver.findElement(By.anything("tada"));
    js.executeScript("arguments[0].style.border='3px solid red'", element);</code>
  • Alle 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>

Das obige ist der detaillierte Inhalt vonWie führe ich JavaScript-Code mit WebDriver in Java aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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