[英]Javascript code to scroll in steps using selenium webdriver
[英]Selenium Webdriver : Scroll to the top using Javascript
我正在将Selenium Webdriver与javascript和node.js一起使用
在测试的某些步骤中,我必须自动单击页面顶部的按钮。
但是当我做一些先前的处理时, 页面会自动滚动到bootom ,结果我的按钮(在顶部)不再显示,所以我正在捕获此错误:
Uncaught WebDriverError: unknown error: Element <li>...</li> is not clickable at point (707, 10). Other element would receive the click: <li class="menumain crm-Campaigns" tabindex="11">...</li>
通过谷歌搜索,我发现我应该滚动到顶部使按钮出现。
我该怎么做?
试试下面的代码,您将可以向上滚动:
WebDriver driver = new FirefoxDriver();
JavascriptExecutor jse = (JavascriptExecutor)driver;
jse.executeScript("window.scrollBy(0,-250)", "");
OR,
jse.executeScript("scroll(0, -250);");
在javascript中:
window.scrollTo(0, 0);
这将滚动到页面的左上角。 但是在大多数情况下,这将等同于顶部。
无需移至页面顶部,即可获取按钮的xpath或ID。 这里的代码显示了使用硒单击按钮的情况。 WebDriver driver = new FirefoxDriver(); JavascriptExecutor jse = (JavascriptExecutor)driver; jse.executeScript("document.getElementById('button').click();");
要滚动,请使用下面的代码jse.executeScript("window.scrollBy(0,-200)", "");
我这样做是这样的:
driver.executeScript('scroll(0, -250);').then(function() {
driver.sleep(3000);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.