簡體   English   中英

Selenium Web驅動程序單擊圖像

[英]Selenium Web driver clicking images

我如何選擇圖像並使用Selenium Web驅動程序單擊它? 說這話

<style type="text/css"> <ul id="nav"> <li> <li> <li> <li> <li> <a href="dashboard.action">My Dashboard</a> </li> </ul>

我會用嗎

driver.findElement(By.linkText("My Dashboard")).click();

或者是其他東西?

如果要在示例中單擊鏈接,則可以使用編寫的選擇器,不同類型的CSS選擇器(例如By.cssSelector("#nav a") (在“ nav”列表中查找鏈接)或By.cssSelector("a[href='dashboard.action']") (查找具有特定href的鏈接))或使用xPath選擇器。

重要的是要有一個唯一的標識符來定位您的元素,並且標識符會在100%的時間內觸發。

例如,如果您希望鏈接文本發生變化,則不要查找該特定的鏈接文本,因為您不能保證它會在100%的時間內工作。

同樣,如果有30個不同的元素具有相同的id標簽,則不要使用它們。

如果結果變得非常復雜...也就是說,如果您所在的頁面很大且包含許多未知變量,請通過XPATH查找。

最后,這實際上取決於您輸入的網站的復雜性以及您需要完成的工作的目標。

有關更多信息,請轉到Selenium javadocs ,然后單擊側欄上的BY以獲取不同方法及其使用方法的列表。

如果您需要單擊帶有圖像的鏈接,則最好使用顯式等待來定位元素。

范例:

新的WebDriverWait(驅動程序,超時).until(ExpectedConditions.presenceOfElementLocated(locator));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM