Robotium - 如何从测试用例中截取并打开屏幕截图

时间:2014-07-07 20:47:43

标签: java android testing robotium

我正在尝试编写一个测试用例,它会截取屏幕截图,并加载此屏幕截图以进行图像处理。到目前为止,我发现了以下方法

solo.takeScreenshot()

takeScreenshot()方法将图片保存在设备上的“/ sdcard / Robotium-Screenshots /”文件夹中。

我可以使用任何方法来访问保存在此文件夹中的文件吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以告诉robotium用于屏幕截图的文件名。 Robotium将异步保存文件,因此您需要等待文件显示使用它。

    solo.takeScreenshot("ScreenshotFile");
    final File file = new File(Environment.getExternalStorageDirectory() + "/Robotium-Screenshots/", "ScreenshotFile" + ".jpg");
    final int TIMEOUT = 5000;
    assertTrue(solo.waitForCondition(new Condition() {
        @Override
        public boolean isSatisfied() {
            return file.exists();
        }
    }, TIMEOUT));
    HERE IS WHERE YOU CAN DO WHATEVER YOU WANT WITH file

当然,在后续运行中,文件将在运行测试之前存在。您需要清理文件或为每次测试运行生成新文件名。