我目前有一个硒测试,在1920 * 1080分辨率下运行平稳。但是我的任务是在不同的常见分辨率(例如1366 * 768)上进行此测试。
问题是,当我在小于1920*1080的分辨率上运行Selenium测试时,我找不到窗口下面的一些元素(正如预期的那样)。如何解决这个问题?
我试过JavascriptExecutor jse = (JavascriptExecutor)driver;jse.executeScript(“window.scrollTo(0,Math.max(document.documentElement.scrollHeight,document.body.scrollHeight,document.documentElement.clientHeight);”);
滚动到页面底部但没有成功。非常感谢您的帮助。使用java、Selenium、TestNG和POM。
嗨,要滚动,请使用如下所示
滚动到页面底部
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)");
要滚动页面底部,请使用以下代码:
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)");