Objeto de configuração do Tradefed

A configuração XML do Tradefed é analisada, e um objeto Configuration é criado a partir dela que descreve a configuração completa.

O objeto é descrito pela interface IConfiguration.Ela contém uma instância de todos os objetos definidos no XML.

Este exemplo:

<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>

Isso resultará em:

  • IConfiguration#getBuildProvider() para retornar uma instância de BootstrapBuildProvider.
  • IConfiguration#getTargetPreparers() para retornar uma lista de ITargetPreparer contendo uma instância de PreloadedClassesPreparer.
  • IConfiguration#getTests() para retornar uma lista de IRemoteTest contendo uma instância de HostTest.

Cada objeto no objeto de configuração pode ser mapeado para a definição XML. Portanto, entender a definição XML geralmente ajuda a entender o que esperar do objeto de configuração.