如何在C目录中创建文件夹并需要使用Java和Selenium WebDriver将屏幕截图保存在该目录中?

时间:2014-07-10 06:25:06

标签: java selenium selenium-webdriver

目前正在使用 Selenium WebDriver Java 中的代码。

我有一种情况,我需要在C:目录和该文件夹中创建一个文件夹,我需要通过selenium web-driver代码将其存储在带有时间戳的文件夹中。

如果我每天按计划运行脚本,则所有屏幕截图都应存储在该文件夹中。 请帮帮我。

1 个答案:

答案 0 :(得分:0)

在测试开始时,使用以下代码创建一个带时间戳的文件夹以保存屏幕截图:

    String scrFolder = "c:/Result/"
            + new SimpleDateFormat("yyyy_MM_dd_HHmmss").format(
                    Calendar.getInstance().getTime()).toString();
    new File(scrFolder).mkdir();

在上面的代码之后添加以下代码,将环境变量设置为指向屏幕截图文件夹:

    System.setProperty("scr.folder", scrFolder);

通过调用以下方法获取屏幕截图

public static void takeScreenshot(WebDriver driver) throws IOException {
    //get the screenshot folder location from enviroment variable set in beginning of test
    String scrFolder = System.getProperty("scr.folder");
    File scrFile = ((TakesScreenshot) driver)
            .getScreenshotAs(OutputType.FILE);
    //copy screenshot to screenshot folder
    FileUtils.copyFile(
            scrFile,
            new File(scrFolder
                    + "/screenshot"
                    + new SimpleDateFormat("HHmmss").format(
                            Calendar.getInstance().getTime()).toString()
                    + ".png"));
}

如果这有助于您,请告诉我。