Tradefed-Konfigurationsobjekt

Die Tradefed-XML-Konfiguration wird geparst und daraus wird ein Configuration-Objekt erstellt, das die vollständige Konfiguration beschreibt.

Das Objekt wird durch die IConfiguration-Schnittstelle beschrieben.Es enthält eine Instanz aller im XML definierten Objekte.

In diesem Beispiel:

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

Das Ergebnis ist:

  • IConfiguration#getBuildProvider(), um eine BootstrapBuildProvider-Instanz zurückzugeben.
  • IConfiguration#getTargetPreparers(), um eine Liste von ITargetPreparer zurückzugeben, die eine Instanz von PreloadedClassesPreparer enthalten.
  • IConfiguration#getTests(), um eine Liste von IRemoteTest mit einer Instanz von HostTest zurückzugeben.

Jedes einzelne Objekt im Konfigurationsobjekt kann der XML-Definition zugeordnet werden. Wenn Sie die XML-Definition kennen, wissen Sie also in der Regel, was Sie vom Konfigurationsobjekt erwarten können.