标题已经说明了问题。我正在寻找一种解决方案,可以比较使用UIAutomation脚本中的target.captureScreenWithName拍摄的屏幕截图和一些参考图像。这对于测试一些自定义视图来说非常有用。
标题已经说明了问题。我正在寻找一种解决方案,可以比较使用UIAutomation脚本中的target.captureScreenWithName拍摄的屏幕截图和一些参考图像。这对于测试一些自定义视图来说非常有用。
尝试在Mac上使用免费的ImageMagick。从iOS 5开始,有一个新的UIAHost.performTaskWithPathArgumentsTimeout(path, args, timeout)函数,可以让您直接从测试中运行外部任务。只需使用此函数以参数运行ImageMagick脚本,即可从测试中获取图像比较结果。
var result = UIAHost.performTaskWithPathArgumentsTimeout(path, args, timeout)
路径 - 图像比较脚本的字符串;
参数 - 一个包含ImageMagicK实用程序的参数和值的数组,如:
var args = ['param1', 'param1Value', 'param2', 'param2value'....];
直接从UIA中实现这一点是不可能的,至少我没有找到任何方法来实现。所有的屏幕截图都保存在测试结果文件夹中。然后您可以使用任何工具对它们进行处理。