Selenium对象离开屏幕

时间:2016-04-19 07:40:32

标签: selenium selenium-webdriver automated-tests

我目前有一个硒测试,在1920 * 1080分辨率下运行平稳。 但是我有一项任务是在不同的常见分辨率上进行测试 1366 * 768。

问题是当我在比1920 * 1080更小的分辨率上运行我的Selenium测试时,我无法找到窗口下方的一些元素(正如预期的那样) 我该如何解决这个问题?

我已经尝试过了 JavascriptExecutor jse =(JavascriptExecutor)驱动程序;     jse.executeScript(" window.scrollTo(0,Math.max(document.documentElement.scrollHeight,document.body.scrollHeight,document.documentElement.clientHeight));&#34);

滚动到页面底部但没有成功。 非常感谢帮助。 使用java,Selenium,TestNG和POM。

2 个答案:

答案 0 :(得分:0)

嗨滚动请使用如下

滚动到页面底部

driver.navigate().to(URL);
((JavascriptExecutor) driver)
.executeScript("window.scrollTo(0, document.body.scrollHeight)");

滚动到页面上的元素

driver.navigate().to(URL);
WebElement element = driver.findElement(By.id("id"));
((JavascriptExecutor) driver).executeScript(
                "arguments[0].scrollIntoView();", element);

按坐标滚动

 driver.navigate().to(URL);
 ((JavascriptExecutor) driver).executeScript("window.scrollBy(0,500)");

答案 1 :(得分:0)

滚动页面底部,使用以下代码:

WebDriver driver = new FirefoxDriver();
JavascriptExecutor js = (JavascriptExecutor)driver;
js.executeScript("window.scrollBy(0,300)", "");

js.executeScript("scroll(0, 300);");

js.executeScript("window.scrollTo(0, document.body.scrollHeight)");