2013-02-05 101 views
4

如何訪問一個嵌套元素,而不使用XPath硒的webdriver(JAVA)嵌套元素

這是我會怎麼寫硒的webdriver(紅寶石)

@browser.find_element(:class, 'mapLock').find_element(:class => 'mapLockOverlay').click 

但我會怎麼寫呢在JAVA 我曾嘗試:

browser.findElement(By.className("mapLock").findElement(By.className("mapLockDisplay").click 

我知道顯然是錯誤的

回答

7

你其實非常接近,只是在括號內。我只是分開了一些東西。

final WebElement mapLockElement = browser.findElement(By.className("mapLock")); 
final WebElement mapLockDisplayElement = mapLockElement.findElement("mapLockDisplay"); 
mapLockDisplayElement.click(); 

如果你正在做這一切在同一行,這將是

browser.findElement(By.className("mapLock")).findElement(By.className("mapLockDisplay")).click(); 
+8

甚至更​​好,'browser.findElement(By.css( 「mapLock .mapLock顯示」))。點擊()'。 –

+0

確實!這不是我想到的,因爲我大多數時間不是Web開發人員,但是仍然是一個很好的解決方案:) –