Java Selenium 2.0-在WebElement.click()之前使用内置滚动时处理z索引(navi)
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();
这通常很好,selenium将滚动直到出现框,然后执行单击()。
无论如何,如果存在具有更高z索引的元素,它将以org.openqa.selene.WebDriverException失败。它滚动到元素,但由于z索引较低,因此不可见。在我的案例中,导航栏位于页面顶部。
我想用javascript滚动到页面顶部来解决这个问题,这样元素就会出现在页面底部,但这可能不是最好的(甚至不是一个好的)解决方案。。。
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
相关文章:
- jQuery中是否内置了任何字符串格式化函数
- 为什么可以't我访问Chrome内置功能$
- 正在寻找一种跨移动浏览器兼容的方式,通过内置麦克风进行录制
- 使用angularjs内置过滤器过滤代码中的特定属性
- 带有内置图像对象的Canvas组件构造函数;t显示's图像
- 挂钩到Rails内置远程:true'ajax:成功'事件
- 是否有任何内置方法可以更改JavaScript对象'的属性设置为某个值
- html元素是否具有内置的属性
- 为什么没有用于cookie的内置JS函数
- Java Selenium 2.0-在WebElement.click()之前使用内置滚动时处理z索引(navi)
- 我们如何自定义内置的 Angular “货币”过滤器
- 检测可滚动元素内的滚动位置
- AngularJS不覆盖内置验证器
- 角度和内置的javascript映射函数
- 无需Javascript内置函数即可将十进制转换为十六进制
- 在没有内置 Javascript 函数的情况下将基数 10 转换为其他基数 2 的数字
- 从函数向内置函数中添加多个参数
- 内置了一个滚动控制器,需要反转它
- Bootstrap 3 Modal内置texarea.当点击/聚焦文本区域时,背景滚动到顶部.仅适用于iOS 8
- 如何:使用滚动条重置分割内的滚动条位置