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 con la interfaz IConfiguration y contendrá una instancia de todos los objetos definidos en el XML.

En este ejemplo, se dan las siguientes situaciones:

<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 devolver una instancia de BootstrapBuildProvider
  • IConfiguration#getTargetPreparers() para devolver una lista de ITargetPreparer que contenga una instancia de PreloadedClassesPreparer.
  • IConfiguration#getTests() para devolver una lista de IRemoteTest que contenga 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 entender qué esperar del objeto de configuración.