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

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

Проект расположен по адресу platform/external/sl4a .

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

Вы можете следовать инструкциям в файле README для сборки и установки SL4A вручную. А при использовании 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.

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

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

python Docs/generate_api_reference_md.py

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