Java 使用Selenium JVM的IE和Chrome的完整页面截图

Java 使用Selenium JVM的IE和Chrome的完整页面截图,java,google-chrome,firefox,selenium,cucumber,Java,Google Chrome,Firefox,Selenium,Cucumber,我正在尝试使用Java中的Selenium拍摄整个页面(没有任何滚动条)的屏幕截图。我下面的代码在Firefox29中运行得非常好。我在Chrome35中测试了相同的代码,它正在拍摄部分屏幕截图(不是整页,带有滚动条的屏幕),IE8不支持SeleniumDrive的屏幕截图 File scrFile = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE); FileUtils.copyFile(scrFile, new File

我正在尝试使用Java中的Selenium拍摄整个页面(没有任何滚动条)的屏幕截图。我下面的代码在Firefox29中运行得非常好。我在Chrome35中测试了相同的代码,它正在拍摄部分屏幕截图(不是整页,带有滚动条的屏幕),IE8不支持SeleniumDrive的屏幕截图

File scrFile = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(scrFile, new File("C://screenshot//" + image1.jpg));

我在任何浏览器的屏幕截图上都没有看到任何问题。对我来说,它需要完整的页面视图

您可以尝试使用以下使用augmenter()的方法,该方法通常用于RemoteWebDriver执行

WebDriver augmentedDriver = new Augmenter().augment(driver); 

File f = null; 

if (augmentedDriver instanceof TakesScreenshot) { 
   f = ((TakesScreenshot) augmentedDriver).getScreenshotAs(OutputType.FILE); 
} else { 
    // screenshot not taken
} 

谢谢你的快速回复。当我使用augmenter()时,整个屏幕截图功能不起作用,控制台中也没有错误。我发现类似的帖子说新的chromedriver(版本29)中有一个bug。漏洞仍然存在