Android автоматизировать тестирование изменения ориентации - PullRequest
1 голос
/ 16 декабря 2011

Я провожу много времени, проверяя изменения ориентации, возвращаясь, меняясь снова и т. Д. И т. Д., Проверяя, правильно ли загружены фрагменты.

Кто-нибудь задумывался над процессом тестирования этих проблем или использовал для этого инструмент?

спасибо

Ответы [ 3 ]

6 голосов
/ 19 января 2012

Используя Robotium, вы можете изменить ориентацию, просто позвонив по номеру:

solo.setActivityOrientation(Solo.LANDSCAPE);

или в JUnit:

activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

На самом деле я не знаю существующего метода автоматического тестированияс несколькими размерами экрана, но было бы достаточно легко вручную запустить тест с использованием другого AVD, если вы настроите AVD для каждого разрешения экрана, с которым вы хотите протестировать.Возможно, вы могли бы запустить различные эмуляторы и запустить все тесты из командной строки каждого эмулятора, используя что-то вроде следующего (если вы используете Unix-подобную операционную систему или Cygwin):

for i in avd_1 avd_2 avd_3
do 
   emulator -avd $i &
   PID=$!
   adb wait-for-device
   adb -e install path/to/your/app.apk
   kill $PID
done

где avd_1,avd_2 и т. д. заменяются именами виртуальных устройств Android для устройств с различными разрешениями экрана.

1 голос
/ 26 ноября 2013

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

0 голосов
/ 19 апреля 2012

Если вы хотите запустить тесты устройства и HMI на нескольких эмуляторах с различным размером и разрешением экрана, лучше всего настроить Jenkins с помощью плагина эмулятора Android .

Позволяет определять матричные задания и проверять, хорошо ли проходят ваши тесты на нескольких платформах:

jenkins matrix

Настройка будет трудной, но преимущества действительно велики!

...