2017-02-26 44 views
0

我需要截取IEDriver中只有可见部分的页面才能与其他驱动程序保持一致。与其他驱动程序一起使用“滚动和针迹”方法获取全高页面图像,但在某些情况下可能会有差异 - 例如页面是否有粘性标题。我宁愿采用这种或那种方式,但对于所有的驱动程序都是一样的,并不是所有的驱动程序都能提供完整页面的截图。是否可以在InternetExplorerDriver中对页面的可见部分进行截图?

Google文档TakesScreenshot接口状态是:

对于webdriver的延伸TakesScreenshot,这使得依赖于浏览器返回以下按优先顺序尽力而为:

  • 整个页面
  • 当前窗口
  • 当前帧的可见部分
  • 该碎石包含浏览器

我的问题,整个显示器的nshot是:

是否可以强制Internet Explorer采取截图只是当前窗口的?我知道这是不可能通过API,但也许有一些自定义功能或内部驱动程序设置可以改变?

回答

1

我发现在Internet Explorer驱动程序服务器的changelog信息:

v2.52.0.0

  • 释放与硒项目的发布同步。
  • JavaScript自动化原子的更新。
  • (代表安东Usmansky的)新增ie.enableFullPageScreenshot能力 允许用户创建只有当前视口的屏幕截图。 功能默认为true,保留原始行为 调整浏览器窗口大小并截取整页。

我试过了,它确实有效! Java示例代码(适用于IE11 - 我没有用其他版本测试):

DesiredCapabilities caps = new DesiredCapabilities(); 
caps.setCapability("ie.enableFullPageScreenshot", false); 
WebDriver driver = new InternetExplorerDriver(caps); 
相关问题