Android: Monkey vs Monkeyrunner для моделирования событий

Я хочу имитировать события, генерируемые обычным пользователем, для сбора следов сетевого трафика с помощью сетевого монитора.

Я просмотрел информацию. приведено в https://developer.android.com/studio/test/monkeyrunner/index.html и https://developer.android.com/studio/test/monkey.html

И я вижу, что monkey используется для генерации случайного распределения событий с помощью параметров командной строки, тогда как monkeyrunner используется для генерации определенных событий с использованием Jython API.

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

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


person Vikash B    schedule 06.09.2016    source источник


Ответы (1)


Есть еще один вариант: AndroidViewClient/culebra.

monkey генерирует случайные события, и вы должны решить, какие события отправлять с помощью monkeyrunner, тогда как culebra режим концерта вместо отправки псевдослучайных событий анализирует содержимое экрана и случайным образом выбирает подходящее событие или действие для также случайно выбранная цель, обычно View.

Например, если случайно выбранное представление является EditText, culebra вводит случайный текст. Однако, если EditText оказывается паролем, он отправляет случайные пароли, то есть вместо простого ввода обычного предложения он выбирает примеры паролей из списка, такого как печально известный «querty». Кроме того, если он обнаруживает, что EditText ожидает адрес электронной почты, путем проверки идентификатора, подсказки или чего-либо еще, что может указывать на это, он отправляет случайные адреса электронной почты, такие как [email protected]. Конечно, другие представления получают другую обработку, например нажатие кнопок, прокрутку прокручиваемых элементов и т. д.

Самое приятное то, что вы можете редактировать concertina.py в соответствии с вашими потребностями (да, он должен поддерживать плагины...).

Более подробную информацию можно найти по адресу http://dtmilano.blogspot.ca/2015/08/culebra-concertina-mode.html и https://github.com/dtmilano/AndroidViewClient/wiki/culebra.

person Diego Torres Milano    schedule 06.09.2016
comment
Изменяет ли AndroidViewClient/culebra код приложения для инструментовки? - person WSS; 20.03.2018
comment
AndroidViewClient/culebra не изменяет код приложения, вы можете протестировать несколько приложений, даже те, у которых нет исходного кода - person Diego Torres Milano; 21.03.2018