![](/img/trans.png)
[英]How to locate web elements by XPath in Selenium WebDriver using JAVA?
[英]How to find web elements in web-view via Selenium WebDriver (Java API)?
我正在使用Selenium WebDriver (Java API)
來測試基於electron/chromium
的應用程序。 此應用程序的登錄頁面有一個web-view
( <webview>...</webview>
),它在其中加載了一個輔助網頁。 我在下面附上了類似登錄頁面及其 DOM 的屏幕截圖,供您參考。 正如您在屏幕截圖中看到的,在此示例中, web-view
加載了輔助網頁https://www.google.ca/ 。 我需要與此輔助網頁中的網絡元素進行交互。 假設我正在嘗試查找Google Search
按鈕並在此示例中單擊它,如下所示。
WebElement googleSearchButton = driver.findElement(By.xpath("//input[@value='Google Search']"));
googleSearchButton.click();
不幸的是,我似乎無法通過driver.findElement(By)
在輔助網頁中找到任何網頁元素。 例如,上面提到的代碼片段的第一行拋出一個NoSuchElementException
。
有誰知道如何通過Selenium WebDriver (Java API)
在web-view
查找 web 元素?
提前致謝!
通過瀏覽WebView文檔,我發現首先不建議使用 webview。
現在,來回答你的問題。 您可以閱讀此文檔並使用 JavascriptExecutor 使用 webview 的 api 與 webview 交互。
https://github.com/electron/electron/issues/2285
在控制台選項卡中打開 DevTools 執行document.querySelector('webview').openDevTools();
它會打開你想要的 HTML 的新窗口。
或者如果使用 jQuery $('webview').openDevTools();
也許只是將'webview'
更改為您的定位器,因為我在頁面上只有一個webview 。
干杯。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.