#iphone #ios #ios-simulator #recording #ios-ui-automation
#iPhone #iOS #ios-симулятор #запись #ios-пользовательский интерфейс-автоматизация
Вопрос:
Я некоторое время пытался найти, но есть ли способ записывать действия пользователя на iphone / симуляторах iphone для тестирования с помощью инструментов? В основном я хочу иметь возможность настраивать таргетинг на приложение и записывать любой пользовательский ввод, который я ввожу, а затем иметь возможность воспроизводить / получать данные для этого. Спасибо!
Ответ №1:
В инструментах есть 2 варианта:
1) Используйте инструмент записи пользовательского интерфейса, который будет записывать движения мыши и щелчки пользователя и позволяет воспроизводить их. (К сожалению, похоже, что Phone Simulator не предоставляет элементы доступности вашего приложения для записи пользовательского интерфейса).
2) Имитация взаимодействия с Automation instrument на javascript с использованием классов UIA — полезно для написания интерфейсных тестов для приложения или имитации взаимодействия с пользователем. Вы можете прочитать вступление об использовании автоматизации в этом блоге Алекса Волмера.
Комментарии:
1. Спасибо! Я знал о моделировании взаимодействий с javascript, но мне просто нужно было знать, возможна ли запись команд мыши и тому подобное при использовании симулятора.
2. К сожалению, я обнаружил, что симулятор не обеспечивает захват событий мыши в UI recorder и не предоставляет ему элементы доступности вашего приложения. Итак, вы должны придерживаться моделирования взаимодействий с помощью скрипта и автоматизации.
3. Я заметил что-то странное с UI recorder в том, что он не позволял мне вводить текст в появившееся у меня приглашение оповещения (я бы набрал / нажал текстовые кнопки, но даже если я нажму enter, записанные события не будут работать). Хотя я мог бы использовать это для простого тестирования кликов (у меня просто был TableView, из которого я удалял элементы с помощью UI Recorder).
Ответ №2:
FoneMonkey — многообещающее стороннее решение, я работал с ним над недавним проектом, и, хотя оно не было идеальным, оно позволяет записывать действия пользователя, воспроизводить их и так далее. Кроме того, похоже, что это открытый исходный код, поэтому вы можете расширить его самостоятельно, если потребуется.
В iOS также есть платформа UIAutomation, но у меня нет непосредственного опыта работы с ней.
Комментарии:
1. Да, в основном я искал помощи с фреймворком UIAutomation, поскольку это то, что мне пришлось бы использовать. Хотя спасибо!
Ответ №3:
Как сказал Роджер, вам придется использовать платформу UIAutomation. Документация Apple должна привести вас туда, куда вам нужно. Кроме того, взгляните на это.
Вы должны написать автоматизацию на JavaScript. Я знаю, это раздражает, но, имея перед собой достаточное количество примеров, вы сможете разобраться с этим менее чем за час.
Комментарии:
1. Я знал о javascript и в основном о том, как это написать, но я просто хотел знать, могу ли я записывать действия мыши и тому подобное с помощью инструментов. Спасибо за ссылки, хотя я также изучаю автоматизацию с помощью javascript.