1

我在 Firefox 上使用 Selenium 进行自动化测试,一切正常,直到我需要检查由于页脚固定在页面底部而不可见的复选框。

这是一长串免责声明,需要检查才能继续。

前两个在此页脚下方,其余的强制向下滚动,并且检查正确。

我的问题是:

1)有没有办法检查前两个甚至认为它们在页脚下方?2) 有没有办法让 Selenium 使用命令向下滚动?3)有没有办法让Selenium打开一个新的Firefox窗口最大化?(我相信如果这是可能的,所有的复选框都将在加载时可见)

谢谢!

PS:这是我的第二个帖子,如果我遗漏了一些信息,请告诉我,我会编辑它。

编辑:

Firefox 版本:23.0.1 Webdriver 版本:2.35

不幸的是,我只为 Firefox 配置了我的网络驱动程序(目前不在 chrome 上)

4

4 回答 4

1

只要您找到具有正确选择器(例如 xpath、css 等)的元素,您就不必滚动页面,因此类似的东西driver.findElement(By.xpath("xpath"));应该消除滚动页面的需要。至于全屏打开页面,请使用以下命令

driver.manage().window().maximize();

于 2013-08-26T20:24:32.253 回答
1

如果您的网页需要向下滚动以与元素交互,首先您必须将该元素显示在视图中。使用 Ruby,这可以通过以下方式实现:

element.location_once_scrolled_into_view

然后与元素交互。

于 2013-08-28T15:28:36.320 回答
0

您可以使用 javascript 执行器来滚动页面。我发现 Selenium 会单击“可见”但隐藏在页面上其他内容后面的对象。

JavascriptExecutor jsx = (JavascriptExecutor)driver;
jsx.executeScript("window.scrollBy(0,450)", "");
于 2013-08-26T19:09:14.190 回答
0

我使用以下功能:

capabilities.setCapability("elementScrollBehavior", 1); // 0- from Top,
                                                      // 1 - from bottom

当我启动驱动程序时,我设置了功能。

于 2017-08-31T07:57:41.737 回答