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

테스트 실행기 구조

테스트 실행기는 호출 흐름의 실행 유닛입니다. 여기서는 실제로 테스트가 실행됩니다.

인터페이스

테스트 실행기는 IRemoteTest 인터페이스를 통해 정의됩니다. 이 인터페이스는 단순한 run 메서드를 제공하여 테스트 실행 시의 호출을 구현합니다.

이렇게 하면 발생될 테스트를 가장 단순하게 정의할 수 있습니다. 하지만 실제 과정에서는 테스트 작성자에게 빌드 및 기기 등에 관한 추가 정보가 있어야 테스트를 제대로 작성할 수 있습니다. 이러한 경우에는 다음과 같은 인터페이스가 유용할 수 있습니다.

기본

아래의 두 인터페이스는 현재 가장 광범위하게 사용되고 있으며, 대부분의 테스트와 관련된 기본적인 요구사항을 나타냅니다.

  • IBuildReceiver는 테스트가 빌드 제공업체 단계에서 생성된 IBuildInfo 개체를 수신할 수 있게 해줍니다. 여기에는 테스트 설정과 관련된 모든 정보와 아티팩트가 포함되어 있습니다.
  • IDeviceTest는 TF에서 테스트 중인 기기를 나타내는 ITestDevice 개체를 수신하게 해주며 개체와의 상호작용을 위한 API를 제공합니다.

고급

테스트 하네스 및 테스트 실행기 간의 좀 더 복잡한 상호작용이 가능하게 해주는 추가적인 인터페이스가 있습니다.

  • ITestFilterReceiver는 테스트가 특정 테스트만 실행하도록 하기 위한 필터 모음을 수신할 수 있게 해줍니다. 이는 테스트의 하위 집합을 실행하는 경우에 유용합니다.
  • ITestCollector는 테스트 실행기가 테스트를 실제로 실행하는 대신 가실행만 할 수 있게 해줍니다. 이는 모든 테스트 사례의 목록을 수집할 때 유용합니다.

기존 테스트 실행기

다양한 테스트 실행기가 이미 존재하며, 이 중 일부는 주요 테스트 유형과 관련이 있습니다.

위의 테스트 외에도 다수의 맞춤 테스트 실행기가 존재합니다. 이러한 테스트는 부팅 테스트와 같은 일부 기능 테스트와 관련된 특수한 용도로 사용됩니다.

새 테스트 실행기 작성

새 테스트 실행기 작성에 대한 자세한 내용은 테스트 작성 섹션을 참조하세요.