![](/img/trans.png)
[英]How to automate clicks using Selenium (Java) for elements within div with higher z-index
[英]Java Selenium 2.0 - handle z-index (navi) when using builtin scroll before WebElement .click()
Selenium 2.0 .click()帶有自動滾動功能,直到該元素可見並允許單擊為止:
WebElement box = driver.findElement( By.id( boxID ) );
box.click();
這通常可以正常工作,硒將滾動直到出現該框,然后執行click()。
無論如何,如果存在具有較高z-index的元素,它將失敗並出現org.openqa.selenium.WebDriverException 。 它滾動到該元素,但由於Z-index較低,因此它不可見。 就我而言,頁面頂部的導航欄。
我想到了使用javascript-scroll來解決此問題的方法,使該元素出現在頁面的底部,但這可能不是最好的(甚至是一個好的)解決方案...
JavascriptExecutor jse = (JavascriptExecutor)driver;
// scroll to top will make the box occur at the bottom of the page
jse.executeScript("scroll(0, -10000);");
有沒有一種優雅的方法可以通過整個測試套件來解決此問題,而無需像javascript滾動這樣的黑客?
String script = String.format(" $('.items-container').scrollTo($('li#%s'))",currentId);
使用此行運行腳本,添加所需的css或xpath
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.