Uiautomator - takeScreenshot - 有没有办法将图像存储在运行测试而不是设备的机器上

时间:2015-02-02 19:47:30

标签: uiautomator android-uiautomator

在uiautomator测试中,使用takeScreenshot(),有没有办法将图像存储在运行测试而不是设备的机器上?

如果无法使用takeScreenshot,id有兴趣听取任何人提出的替代方法。

由于

2 个答案:

答案 0 :(得分:1)

您可以定义商店路径(screenPath)并将屏幕截图保存在设备上。

你可以像这样使用adb pull:

adb pull screenPath localPath

在本地复制屏幕截图。

答案 1 :(得分:0)

尚未完全覆盖所有 UiAutomator 案例,但AndroidViewClient/culebra可以为您提供替代方案。您可以替换一些测试并截取屏幕截图,它们将保存在运行测试的计算机上。

使用Culebra GUI生成测试用例的方法非常简单,只需运行:

$ culebra -UG -o mytest.py

生成测试用例。然后,在测试生成期间,您可以使用 CTRL + F (或上下文菜单),屏幕截图将被保存并且这样一行

self.vc.writeImageToFile('/tmp/${serialno}-${focusedwindowname}-${timestamp}.png', 'PNG')

将在测试脚本中生成,因此每次运行时都会保存,而不会过度压缩前一个。

希望这有帮助。