Objeto de configuración de Tradefed

Se analiza la configuración XML de Tradefed y se crea un objeto Configuration a partir de ella que describe la configuración completa.

El objeto se describe en la interfaz IConfiguration, que contendrá una instancia de todos los objetos definidos en el XML.

En este ejemplo:

<configuration description="<description of the configuration>">
    <!-- A build provider that takes local device information -->
    <build_provider class="com.android.tradefed.build.BootstrapBuildProvider" />

    <!-- Some target preparation, disabled by default -->
    <target_preparer class="com.android.tradefed.targetprep.PreloadedClassesPreparer">
        <option name="disable" value="true" />
    </target_preparer>

    <!-- One test running some unit tests -->
    <test class="com.android.tradefed.testtype.HostTest">
        <option name="class" value="com.android.tradefed.build.BuildInfoTest" />
    </test>
</configuration>

El resultado será el siguiente:

  • IConfiguration#getBuildProvider() para mostrar una instancia de BootstrapBuildProvider.
  • IConfiguration#getTargetPreparers() para mostrar una lista de ITargetPreparer que contiene una instancia de PreloadedClassesPreparer.
  • IConfiguration#getTests() para mostrar una lista de IRemoteTest que contiene una instancia de HostTest.

Cada objeto del objeto de configuración se puede asignar a la definición en XML, por lo que comprender la definición en XML suele ayudar a comprender qué esperar del objeto de configuración.