【问题标题】:Automation Blackbox testing render scripts自动化黑盒测试渲染脚本
【发布时间】:2014-01-27 15:00:03
【问题描述】:

我需要找到一个解决方案来测试一些渲染脚本。基本上是一些在屏幕上显示一些动画的应用程序。如果显示动画,则测试通过,否则失败。 我没有apk的来源。 到目前为止,我使用monkeyrunner 拍摄了2 张截图并进行了比较。如果两张图片不同,则测试通过。现在由于android模拟器中的一个错误,我不能再截图了。

【问题讨论】:

标签: android testing monkeyrunner


【解决方案1】:

如果您不能使用 MonkeyRunner 截屏,我建议您尝试使用 shell 命令在设备上截屏,将生成的图像拉到主机并将图像读取到 MonkeyImage。

首先,让设备自行截屏:

monkeyDevice.shell("screencap -p /sdcard/screen.png")

其次,从设备中拉出截图:

from subprocess import call
call(["adb", "pull", "/sdcard/screen.png"])

三、将截图加载为 MonkeyImage

image = MonkeyRunner.loadImageFromFile('screen.png')

现在您可以像平常一样使用 image.sameAs 比较图像。

请注意,在 SDK 版本 13 中添加了 MonkeyRunner.loadImageFromFile。

【讨论】:

  • 我已经告诉过你,由于andoird中的一个错误,这不再有效,图片总是黑色的,所以我需要一个workaroud
  • 对不起,我认为只有通过 MonkeyRunner 的屏幕截图与您的描述不符。您可能会编写一个 ActivityInstrumentationTestCase2 类并使用 getActivity 访问根视图。拥有根视图后,您可以通过多种方式将其写入文件(请参阅:stackoverflow.com/questions/2661536/…)并按上述方式提取结果文件。当您进行黑盒测试时,您必须使用签名工具使用与检测应用相同的密钥对目标应用重新签名:troido.de/re-sign.jar
猜你喜欢
  • 1970-01-01
  • 2014-09-13
  • 1970-01-01
  • 1970-01-01
  • 2011-04-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多