Запись действий пользователя с использованием инструментов

#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.