iOS UIAutomation: можно ли сравнить скриншоты с эталонными изображениями? - PullRequest
5 голосов
/ 09 ноября 2010

Название уже объясняет это. Я ищу решение для сравнения снимков экрана, сделанных с target.captureScreenWithName в сценарии UIAutomation, с некоторыми эталонными изображениями. Было бы неплохо протестировать некоторые пользовательские представления.

Ответы [ 3 ]

3 голосов
/ 10 июля 2012

Попробуйте использовать бесплатный ImageMagicK для Mac. Начиная с iOS 5, есть новый UIAHost.performTaskWithPathArgumentsTimeout (path, args, timeout), который позволяет запускать внешние задачи прямо из ваших тестов. Просто запустив скрипт ImageMagic, используя эти функции с параметрами, вы сможете получить результаты сравнения изображений прямо из вашего теста.

var result = UIAHost.performTaskWithPathArgumentsTimeout(path, args, timeout)

путь - строка в сценарии сравнения изображений;

args - массив параметров и его значений для утилиты ImageMagicK, например:

var args = ['param1', 'param1Value', 'param2', 'param2value'....];

Подробнее для ImageMagicK: http://www.imagemagick.org/script/index.php

UIAHost ссылка: http://developer.apple.com/library/ios/#documentation/UIAutomation/Reference/UIAHostClassReference/UIAHost/UIAHost.html

1 голос
/ 08 февраля 2012

Проверьте Zucchini Framework . Он прекрасно оборачивает UIAutomation API и позволяет создавать скриншоты в качестве тестовых утверждений.

1 голос
/ 28 января 2011

Невозможно сделать это напрямую из МАУ, по крайней мере, я не нашел способа сделать это. Все скриншоты сохраняются в папке с результатами теста. Затем вы можете обработать их любым инструментом, который вам нравится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...