Escribir una prueba de Shell en Trade Federation

Esta página describe cómo escribir una prueba de shell. Si se puede realizar una prueba con un script de shell, puede ejecutarla con ExecutableHostTest . ExecutableHostTest admite el filtrado de pruebas y la fragmentación de pruebas.

Escribir una prueba de shell

Su script de shell principal se ejecuta en el host. Otros scripts o archivos binarios para ejecutar en el dispositivo y los archivos de datos necesarios deben enviarse primero al dispositivo. Esto se puede hacer como parte del script principal o usando PushFilePreparer .

Si la prueba tiene módulos binarios de dispositivo que deben instalarse junto con la prueba, especifíquelos con la propiedad data_device_bins .

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

Shell test ziptool-tests es un ejemplo de ello.

El resultado de la prueba para cada prueba se basa en el estado de salida de su script principal. Una prueba puede exceder el tiempo per-binary-timeout .

Configuración de una prueba de shell

En la configuración XML de Tradefed, las pruebas de shell se ejecutan a través del corredor 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>

Establezca el script principal para la prueba como el valor de la opción binary . Consulte otras opciones de ExecutableHostTest .

Si el script requiere privilegios de raíz, agregue RootTargetPreparer a la configuración.