首頁 > Java > java教程 > 如何從 Java WebDriver 執行 JavaScript 程式碼?

如何從 Java WebDriver 執行 JavaScript 程式碼?

Patricia Arquette
發布: 2024-10-25 04:50:29
原創
611 人瀏覽過

How do I Execute JavaScript code from Java WebDriver?

從Java 執行WebDriver JavaScript:增強指南

問題中提到的命令./go webdriverjs 是一個shell 命令,旨在在特定資料夾中設定並初始化WebDriverJs 環境。但是,需要注意的是,WebDriverJs 是一種語言綁定,它支援 JavaScript 測試,而不是從 Java 執行 JavaScript 片段。

要在Java WebDriver 中運行JavaScript 程式碼,請使用以下方法:

<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>
登入後複製

或者,考慮:

<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>
登入後複製

JavascriptExecutor 提供了廣泛的文件和功能。在它的executeScript()方法中,您可以執行函數呼叫、原始JS、傳回值以及傳遞複雜參數。

範例:

  1. 如driver.findElement( 所示) 取得WebElement By.id("someId")):
<code class="java">js.executeScript("return document.getElementById('someId');");</code>
登入後複製
  1. 視覺化WebElement 的邊框:
<code class="java">WebElement element = driver.findElement(By.anything("tada"));
js.executeScript("arguments[0].style.border='3px solid red'", element);</code>
登入後複製
  1. 修改單選頁輸入按鈕:
<code class="java">js.executeScript(
         "var inputs = document.getElementsByTagName('input');" +
         "for(var i = 0; i < inputs.length; i++) { " +
         "    inputs[i].type = 'radio';" +
         "}" );</code>
登入後複製

以上是如何從 Java WebDriver 執行 JavaScript 程式碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板