Google은 흑인 공동체를 위한 인종 간 평등을 진전시키기 위해 노력하고 있습니다. Google에서 어떤 노력을 하고 있는지 확인하세요.

Tradefed XML 구성의 상위 수준 구조

Tradefed의 구성은 실행해야 하는 테스트와 준비/설정 단계를 설명하기 위해 XML 구성을 따릅니다.

이론적으로는 단일 명령어에 대해 모든 것을 XML에서 정의할 수 있습니다. 하지만 실제로는 기본 템플릿 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>

        <!-- [OPTIONAL] -->
        <logger class="com.android.tradefed.log.FileLogger">
            <option name="log-level" value="VERBOSE" />
            <option name="log-level-display" value="VERBOSE" />
        </logger>

        <!-- [OPTIONAL] -->
        <log_saver class="com.android.tradefed.result.FileSystemLogSaver" />

        <!-- As many reporters as we want -->
        <result_reporter class="com.android.tradefed.result.ConsoleResultReporter" />
        <result_reporter class="com.android.tradefed.result.suite.SuiteResultReporter" />
        <result_reporter class="com.android.tradefed.result.MetricsXMLResultReporter"/>
    </configuration>
    

전체 Tradefed XML은 <configuration> 태그로 구분됩니다. Tradefed objectsbuild_provider, target_preparer, test 등의 자체 태그에 정의됩니다. 태그의 개별 목적은 아키텍처 섹션에 좀 더 자세히 설명되어 있습니다.

각 개체에는 런타임 시에 리졸브되는 class=에 정의된 개체와 관련된 자바 클래스가 있습니다. 따라서 실행 시 클래스를 포함하는 JAR 파일만 Tradefed 자바 클래스 경로에 있으면 이를 찾아 리졸브할 수 있습니다.

OTradefed 개체 순서

여러 태그의 순서는 상관없습니다. 예를 들어 build_providertarget_preparer 이후에 지정되어도 아무런 차이가 없습니다. 테스트 호출의 흐름은 하네스 자체에 의해 적용되므로 항상 올바른 순서대로 호출됩니다.

같은 태그를 포함하는 개체의 순서는 상관이 있습니다. 예를 들어 정의된 두 개의 target_preparer 개체는 XML 정의의 순서대로 호출됩니다. 기기 설정의 최종 상태가 변경될 수 있으므로 이를 이해하는 것이 중요합니다. 예를 들면 플래시에 이어 APK 설치APK 및 플래시 설치와 다르며, 이는 플래시로 기기가 삭제되기 때문입니다.