На этой странице описано, как написать тест с использованием командной оболочки. Если тест можно выполнить с помощью скрипта командной оболочки, вы можете запустить его с помощью ExecutableHostTest . ExecutableHostTest поддерживает фильтрацию и сегментирование тестов.
Напишите тест оболочки
Основной скрипт оболочки выполняется на хосте. Другие скрипты или исполняемые файлы, которые должны запускаться на устройстве, а также необходимые файлы данных должны быть предварительно загружены на устройство. Это можно сделать как в рамках основного скрипта, так и с помощью PushFilePreparer .
Если тест включает в себя бинарные модули устройств, которые необходимо установить одновременно с тестом, укажите их с помощью свойства data_device_bins .
sh_test {
name: "module-name",
...
data_device_bins: ["target-name"],
}
Примером тому служит Shell test ziptool-tests .
Результат каждого теста зависит от статуса завершения вашего основного скрипта. Тест может завершиться по истечении времени ожидания, если указано значение per-binary-timeout .
Настройте тест оболочки.
В конфигурации Tradefed XML тесты оболочки запускаются через средство запуска ExecutableHostTest .
<test class="com.android.tradefed.testtype.binary.ExecutableHostTest" >
<option name="binary" value="your-test-script.sh" />
<option name="relative-path-execution" value="true" />
<option name="per-binary-timeout" value="15m" />
</test>
В качестве значения параметра binary укажите основной скрипт для теста. Ознакомьтесь с другими параметрами ExecutableHostTest .
Если для выполнения скрипта требуются права root, добавьте RootTargetPreparer в конфигурацию.