捕获截图

时间:2016-06-11 01:57:14

标签: java testing selenium-webdriver

如何使用测试用例名称获取失败的测试用例的屏幕截图? 例如: 假设测试用例名称为testVelifyLogin()。如果失败,那么我的截图名称应为testVelifyLogin_time_date.jpg

请帮我解决这个问题。

我为屏幕截图编写了如下代码:

public void onTestFailure(ITestResult iTestResult) {

        String path = System.getProperty("user.dir") + "\\TestOutput\\ScreenShots";

        DateFormat dateFormat = new SimpleDateFormat("HH_mm_ss_dd_MM");
        Calendar cal = Calendar.getInstance();
        String date = dateFormat.format(cal.getTime());
         File scrFile = ((TakesScreenshot) driver)
                .getScreenshotAs(OutputType.FILE);

        try {
            FileUtils.copyFile(scrFile, new File(path,"screenshot_"+date+".jpg"));
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

而不是screenshot_我想要测试用例名称。

1 个答案:

答案 0 :(得分:0)

您将从 ITestResult 对象获取它。例如,

String testName = iTestResult.getName();