Можно ли запустить инструмент автоматизации пользовательского интерфейса из командной строки?


есть ли способ открыть UIAutomation инструмент через терминал?

можно писать AppleScript чтобы открыть Apple UIAutomation инструмент и загрузить приложение для тестирования?

не могли бы вы сказать мне, есть ли какой-либо способ через скрипты или через командную строку мы можем открыть UIAutomation и выберите приложение для тестирования, а также выберите тестовый сценарий?

9 53

9 ответов:

instruments -t /Developer/Platforms/iPhoneOS.platform/Developer/Library/Instruments/\
PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate \
<full_path_to_application> -e UIASCRIPT <path_to_script.js> \
-e UIARESULTSPATH <output_results_path>

для xcode >= 4.5

instruments -t
/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/\
AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate \
<full_path_to_application> -e UIASCRIPT <path_to_script.js> \
-e UIARESULTSPATH <output_results_path>

для xcode >= 6.1

instruments -w <device ID> -t \
/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/\
AutomationInstrument.xrplugin/Contents/Resources/Automation.tracetemplate \
<full_path_to_application> -e UIASCRIPT <path_to_script.js> \
-e UIARESULTSPATH <output_results_path>

есть несколько важных вещей, чтобы отметить хотя:

  1. параметр-w не требуется, если вы не хотите запускать сценарии на своем устройстве. Если вы хотите запустить свои скрипты на симуляторе, просто опустите этот параметр из команды.
  2. full_path_to_application-это путь к вашему .файл приложения, созданный вашим симулятором. Для меня этот путь был

    / Users/fwasim/Library/Application Support/iPhone Simulator/5.0/Applications/AA6BA2E1-D505-4864-BECC-29ADEE28194D / name_of_application.приложение

    этот путь может отличаться для всех остальных в зависимости от того, какую версию iOS вы используете на своем симуляторе. Также не забудьте поставить этот путь в двойные кавычки.

  3. path_to_script.js должен быть полный путь к тому, где ваш скрипт автоматизации написан на javascript спасенный. Также не забудьте поставить этот путь в двойные кавычки.

  4. наконец выходные результаты путь-это путь, где вы хотите сохранить выходные результаты. Также не забудьте поставить этот путь в двойные кавычки.

Это были моменты, которые я пропустил, и, таким образом, получал некоторые из ошибок, упомянутых выше.

запуск UIAutomation через командную строку Вы можете сделать это сейчас, начиная с XCode 4.2 для iOS5 beta 4 Из командной строки вы можете запустить инструменты, указывающие на шаблон автоматизации, и указать в качестве переменных среды тестовый сценарий, который вы хотите выполнить, и путь назначения для результатов:

инструменты-w-t / разработчик / платформы / iPhoneOS.платформа/разработчик/библиотека/инструменты/Плагины / AutomationInstrument.комплект / содержание / ресурсы / автоматизация.tracetemplate-e UIASCRIPT

выше из этого источника url: http://dev-ios.blogspot.com/2011/07/starting-uiautomation-via-command-line.html

смотрите дополнительную информацию о командной строке от Apple по адресу: http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/instruments.1.html

плюс сообщение от пользователя Stacktrace в командной строке запуск с iphone iOS UIAutomation можно ли использовать инструменты с помощью команды линия?

надеюсь, это поможет-хорошего дня:)

обновлено и протестировано для Xcode 6.0.1:

instruments -w 'iPhone 5s' \
    -t '/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.xrplugin/Contents/Resources/Automation.tracetemplate' \
    '/Users/sohail/Library/Developer/CoreSimulator/Devices/7232A640-A9D2-4626-A2AD-37AFFF706718/data/Containers/Bundle/Application/E71B915E-051D-4BEF-9083-34416D02EC91/RoadRunnerRadar.app' \
    -e UIASCRIPT '/Users/sohail/Developer/clients/acme/roadrunnerradar/ACMERoadRunnerRadarAutomationTests/TestRunner.js' \
    -e UIARESULTSPATH '/Users/sohail/Developer/clients/acme/roadrunnerradar/ACMERoadRunnerRadarAutomationTests/TestResults/'

вдохновленный другими, которые написали оболочки командной строки, которые не были обновлены в то время, и, таким образом, не работали (и казалось трудным понять, как я был склонен воскресить их), я написал сценарий оболочки bash, который, как я считаю, будет более прозрачным, более легким и, следовательно, легче поддерживать.

вы можете найти проект на github и спутником блог пост.

вместо instruments команда, я написал обертку, которая проще в использовании:https://github.com/enriquez/uiauto

чтобы использовать его, вам просто нужно сделать следующее:

  1. построить свой проект в Xcode для симулятора (поддержка устройств в ближайшее время).
  2. cd, где ваш проект .xcodeproj файл или .xcworkspace находится.
  3. выполнить uiauto exec path/to/your/script.js.

С каждой новой версией Xcode путь шаблона, кажется, изменяется. Одним из лучших способов узнать путь шаблона является instruments -s команда, которая будет перечислять все доступные шаблоны.

Я тоже очень заинтересовался этой темой. Что я на самом деле нашел это ссылка который показывает, что есть способ запуска инструментов из терминала с предопределенным шаблоном, местом, где должны храниться результаты, и целевым устройством, на котором он должен работать, и другими параметрами. Вы также можете просто ввести терминал instruments чтобы получить список параметров.

Я была неудачной с управлением автоматизации пользовательского интерфейса на iPhone таким образом. Я не пробовал симулятор или mac приложение, так как я в основном интересует устройство. Я отправил вопрос вот на так но из-за отсутствия какой-либо реакции, я думаю, что не многие люди используют инструменты таким образом.

но есть надежда запустить его, так как есть tего короткая нить на форуме разработчиков apple (нужно авторизоваться), которые предполагают, что это может быть сделано. Я попробую это позже, если мне это удастся, я опубликую решение здесь. Если вам удастся сделать это работает мольбы разместить свой путь сюда, как я (и, вероятно, другие) будут заинтересованы.

есть инструмент для записи / воспроизведения событий пользовательского интерфейса с оболочкой среды, и может писать сценарий с ruby.

интерактивная разработка приложений для iPhone http://github.com/wookay/libcat

введите эту команду в terminal instruments-s, вы получите путь к шаблону после типа:

instruments -t <template path> <Application file path> -e UIASCRIPT <script.js> UIARESULTPATH <result_path>

правильный способ сделать это на симуляторе iOS выглядит следующим образом:

instruments -w 'iPhone 5s (9.1)' \
-t '/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.xrplugin/Contents/Resources/Automation.tracetemplate' \
'justTheNameOfYourAppDontAddExtension' \
-e UIASCRIPT '/Users/barry/Dropbox/Public/login.js' \
-e UIARESULTSPATH '/Users/barry/Dropbox/Public/