테스트 명령어 스케줄러

Tradefed에서는 모든 단일 테스트 요청이 명령어 스케줄러를 거쳐 실행됩니다. 따라서 명령어 스케줄러는 테스트를 실행하는 데 필요한 하네스의 핵심 구성요소입니다.

수명 주기

테스트 요청이 Tradefed에 제시되면(예: 콘솔에서 입력), 요청은 실행되기 전에 다음과 같은 이벤트를 거치게 됩니다.

  1. 테스트 요청 파싱됨 - 테스트 요청은 일반적으로 XML Tradefed 구성 참조에 이은 옵션으로 구성됩니다 예: > run host --class com.android.tradefed.build.BuildInfoTest
  2. 기기 관리자가 테스트 요청과 일치하는 기기에 대해 요청됨 - 기기 관리자가 테스트 요청과 일치하는 기기를 할당합니다. 예를 들어 Pixel 기기가 요청되면 기기 관리자가 가용한 Pixel 기기를 찾습니다.
  3. 테스트 요청 + 기기가 호출로 시작됨 - 테스트가 시작되고 있습니다.
  4. 기기 해제 - 호출이 완료되면 할당된 기기가 해제되며, 다른 테스트에 할당할 수 있습니다.

Tradefed 호출

Tradefed의 호출이란 테스트 명령어가 현재 실행 중인 경우를 의미합니다. 호출에 포함된 기기는 allocated로 표시되고 다른 테스트에서 실행할 수 없습니다.

TF는 다음 순서에 따라 단계를 실행합니다.

  1. 아티팩트 다운로드 빌드 및 테스트
  2. 타겟 준비
  3. 테스트 실행
  4. 타겟 정리
  5. 결과 보고

각 단계에 대한 자세한 내용은 아키텍처 섹션 내에 설명되어 있습니다.