Используйте Trade Federation со слоем сценариев для Android

Scripting Layer for Android (SL4A) – это набор инструментов автоматизации для вызова API Android независимо от платформы. Он поддерживает как удаленную автоматизацию через adb, так и выполнение скриптов на устройстве через серию легковесных слоев трансляции.

Проект находится по адресу platform/external/sl4a.

Использовать

Вы можете следовать инструкциям в файле SL4A README, чтобы создать и установить его вручную. При использовании Tradefed можно воспользоваться некоторыми утилитами, чтобы упростить работу.

Скачать и установить

Начните с файла BT-discovery-sl4a.xml – примера конфигурации Tradefed, в которой используются два устройства. Файл SL4A.apk доступен в большинстве сборок устройств в папке tests.

В приведенном выше примере Tradefed автоматически получает сборки, прошивает оба устройства и устанавливает на них приложение "SL4A.apk". Вот как это сделать:

source build/envsetup.sh
lunch
make sl4a
tradefed.sh run google/example/BT-discovery-sl4a

Или после создания:

./tradefed.sh run google/example/BT-discovery-sl4a

Как написать тест в Tradefed с помощью SL4A

Вы можете воспользоваться примером теста, описанным выше: Sl4aBluetoothDiscovery.java. Это хороший пример того, как использовать SL4A в тесте Tradefed.

Документация по SL4A API

Можно сгенерировать полный список обратных вызовов, доступных через SL4A. В каталоге с исходными файлами SL4A platform/external/sl4a/ выполните следующую команду:

python Docs/generate_api_reference_md.py

В каталоге Docs будет файл ApiReference.md, содержащий функции RPC, доступные в SL4A, а также документацию по функциям RPC.