Trade Federation에서 셸 테스트 작성

이 페이지에서는 셸 테스트 작성 방법을 설명합니다. 셸 스크립트로 테스트를 실행할 수 있는 경우 ExecutableHostTest로 실행하면 됩니다. ExecutableHostTest는 테스트 필터링과 테스트 샤딩을 지원합니다.

셸 테스트 작성

기본 셸 스크립트는 호스트에서 실행됩니다. 기기에서 실행할 다른 스크립트나 바이너리와 필요한 데이터 파일은 기기로 먼저 푸시해야 합니다. 기본 스크립트의 일부로 또는 PushFilePreparer를 사용하여 실행할 수 있습니다.

테스트에 테스트와 함께 설치해야 하는 기기 바이너리 모듈이 있다면 data_device_bins 속성으로 지정합니다.

sh_test {
    name: "module-name",
    ...
    data_device_bins: ["target-name"],
}

셸 테스트 ziptool-tests를 예로 들 수 있습니다.

각 테스트의 테스트 결과는 기본 스크립트의 종료 상태에 기반합니다. 테스트는 per-binary-timeout이 지정되었다면 시간이 제한될 수 있습니다.

셸 테스트 구성

Tradefed XML 구성에서는 셸 테스트가 ExecutableHostTest 실행기를 통해 실행됩니다.

<test class="com.android.tradefed.testtype.binary.ExecutableHostTest" >
    <option name="binary" value="your-test-script.sh" />
    <option name="relative-path-execution" value="true" />
    <option name="per-binary-timeout" value="15m" />
</test>

테스트의 기본 스크립트를 binary 옵션 값으로 설정합니다. 다른 ExecutableHostTest 옵션을 확인하세요.

스크립트에 루트 권한이 필요하면 RootTargetPreparer를 구성에 추가합니다.