提问者:小点点

屏幕上的硒物体


我目前有一个硒测试,在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。


共2个答案

匿名用户

嗨,要滚动,请使用如下所示

滚动到页面底部

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)");