1
    public static void takeScrollableScreenshot(WebDriver webdriver, String filePath, WebDriverWait wait) throws Exception
      {
    File myDirectory = new File(filePath);
    if(!myDirectory.exists()) {
       myDirectory.mkdirs(); 
    }else{
       // Directory already exist
    }

    Screenshot screenshot = new AShot().shootingStrategy(ShootingStrategies.viewportPasting(500))
            .takeScreenshot(webdriver);

    ImageIO.write(screenshot.getImage(), "PNG", myDirectory);

}

样本输出

4

1 回答 1

1

您可以使用以下方法在 IE 中截取整页截图:

/**
     * @param driver
     * @param file e.g "C:\\Users\\username\\Desktop\\RegressionTests\\oracle.png"
     * @throws IOException
     */
    public static void takeScreenshot(WebDriver driver, String file) throws IOException {
         ((JavascriptExecutor) driver).executeScript("window.scrollTo(0, document.body.scrollHeight)");
         File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
         FileUtils.copyFile(scrFile, new File(file));
     }

希望对你有帮助:)

于 2018-07-27T09:51:31.283 回答