Объект конфигурации Tradefed

Конфигурация Tradefed в формате XML анализируется, и на её основе создаётся объект Configuration , описывающий полную конфигурацию.

Объект описывается интерфейсом IConfiguration. Он будет содержать экземпляры всех объектов, определенных в XML.

Вот этот пример:

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

В результате:

  • IConfiguration#getBuildProvider() возвращает экземпляр BootstrapBuildProvider .
  • IConfiguration#getTargetPreparers() возвращает список объектов ITargetPreparer , содержащих экземпляр PreloadedClassesPreparer .
  • IConfiguration#getTests() возвращает список объектов IRemoteTest , содержащих экземпляр объекта HostTest .

Каждый объект в конфигурационном файле может быть сопоставлен с XML-определением, поэтому понимание XML-определения обычно помогает понять, чего ожидать от конфигурационного файла.