3

我不能对失败进行截图。早些时候,在我真正的 iOS 设备上一切正常,但现在 - Appium 崩溃并且没有截图,我不知道发生了什么。

Appium 日志:链接在这里

Java代码:

public void takeScreenShotOnFailure(ITestResult testResult, String name) throws IOException  {
    if (testResult.getStatus() == ITestResult.FAILURE) {
        File scrFile = dr.getScreenshotAs(OutputType.FILE);
        Date date = new Date();
        SimpleDateFormat home = new SimpleDateFormat("dd.MM hh:mm:ss");
        String homedate = home.format(date);
        FileUtils.copyFile(scrFile, new File("test-output/screenshots/" + name + ".jpg"));
    }
}

有任何想法吗?

4

2 回答 2

1

试试这个代码:

  WebDriver driver = new FirefoxDriver();
    driver.get("http://www.google.com/");
    File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
    // Now you can do whatever you need to do with it, for example copy somewhere
    FileUtils.copyFile(scrFile, new File("c:\\tmp\\screenshot.png"));
于 2016-04-20T10:23:10.700 回答
0
    File file = m_driver.getScreenshotAs(OutputType.FILE);
    try {
        FileUtils.copyFile(file, new File(screenshotName + "ScreenShot.jpg"));
        System.out.println(screenshotName + "ScreenShot.jpg generated\n");
    } catch (IOException e) {
        e.printStackTrace();
    }

这就是我使用 IOSDriver m_driver 生成屏幕截图的方式。我在 Mac 上使用它。从您的日志中,我建议您在尝试截屏时确保您的 IOSDriver 仍然存在。

于 2016-04-20T22:12:08.053 回答