2016-04-20 14 views
3

失敗した場合にスクリーンショットをとることはできません。以前は、私の本当のiOSデバイスではすべて正常だったが、今はAppiumがクラッシュし、スクリーンショットが取られず、何が起きているのか分からない。スクリーンショットを撮っているときにAppiumがクラッシュしました

Appiumログ:link here

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")); 
    } 
} 

任意のアイデア?

+0

拡張子を.pngに変更してください。 – Emna

+1

この行にAppiumクラッシュがあります。ファイルscrFile = dr.getScreenshotAs(OutputType.FILE); –

+0

ok申し訳ありませんが、私は私の分度器スクリプトとappium – Emna

答えて

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")); 
+0

IOSDriver を使用していますが、それでも役に立たなかった –

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がまだ生きていることを確認することをお勧めします。

関連する問題