gpt4 book ai didi

Java Selenium 2.0 - 在 WebElement .click() 之前使用内置滚动时处理 z-index (navi)

转载 作者:太空宇宙 更新时间:2023-11-04 06:07:53 25 4
gpt4 key购买 nike

Selenium 2.0 .click() 具有自动滚动功能,直到元素可见并允许单击:

WebElement box = driver.findElement( By.id( boxID ) );
box.click();

这通常工作正常,selenium 会滚动直到出现框,然后执行 click()。

无论如何,如果存在具有更高 z-index 的元素,它将失败并出现 org.openqa.selenium.WebDriverException 。它滚动到该元素,但由于 z 索引较低而不可见。就我而言,导航栏位于页面顶部。

我想用 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 滚动这样的 hack?

最佳答案

 String script = String.format(" $('.items-container').scrollTo($('li#%s'))",currentId);

使用此行运行脚本,添加您需要的 css 或 xpath

关于Java Selenium 2.0 - 在 WebElement .click() 之前使用内置滚动时处理 z-index (navi),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29078461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com