Написание теста оболочки в Trade Federation

На этой странице описывается, как написать тест оболочки. Если тест можно выполнить с помощью сценария оболочки, вы можете запустить его с помощью ExecutableHostTest . ExecutableHostTest поддерживает фильтрацию тестов и сегментирование тестов.

Написание теста оболочки

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

Если в тесте есть бинарные модули устройств, которые должны быть установлены вместе с тестом, укажите их с помощью свойства data_device_bins .

sh_test {
    name: "module-name",
    ...
    data_device_bins: ["target-name"],
}

Тест оболочки ziptool-tests является таким примером.

Результат теста для каждого теста основан на статусе выхода вашего основного скрипта. Тест может истечь по тайм-ауту, если был указан per-binary-timeout .

Настройка теста оболочки

В XML-конфигурации Tradefed тесты оболочки запускаются через исполняющую программу 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 .

Если скрипт требует привилегий суперпользователя, добавьте RootTargetPreparer в конфигурацию.