다중 타겟 준비자

타겟 준비자와 마찬가지로 다중 타겟 준비자는 여러 기기를 함께 설정할 수 있게 해줍니다. 예를 들어 이 준비자는 테스트와 관련하여 블루투스를 사용하여 두 기기를 연결할 때 사용됩니다.

기본 인터페이스

기본 인터페이스는 실행할 setUp 메서드를 구현할 수 있게 해주는 IMultiTargetPreparer입니다. 준비자를 쉽게 사용 중지할 수 있도록 기본적인 사용 중지 기능을 제공하는 Google의 기본 추상화 클래스인 BaseMultiTargetPreparer를 구현하는 것이 좋습니다.

다중 타겟 준비자 역시 정리 작업에 tearDown 메서드를 직접 제공합니다.

권장사항

각 준비자는 단일 기본 기능으로 제한하는 것이 좋습니다. 이렇게 하면 준비자를 훨씬 쉽게 재사용할 수 있습니다.

또한 연산이 중복되는 경우를 피할 수 있도록 준비자를 새로 추가하기 전에 가용한 준비자 목록부터 확인합니다. 준비자는 tools/tradefederation/core/src/com/android/tradefed/targetprep/multi/에서 사용할 수 있습니다.

다중 타겟 준비자가 설정할 수 있는 기기 수에는 제한이 없습니다. 모든 기기는 구현을 위한 인터페이스의 IInvocationContext에서 사용할 수 있습니다.

XML 구성

예를 들어 객체 태그는 multi_target_preparer입니다.

<multi_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_target_preparer>

연산 순서

  1. multi_target_preparertarget_preparer 이후setUp을 실행합니다.
  2. multi_target_preparer는 타겟 클리너 전에 tearDown을 실행합니다.

이로 인해 모든 설정 단계의 성능이 보장되지는 않으므로 XML에서 다중 타겟 준비자를 multi_pre_target_preparer로 정의하고 target_preparer 인스턴스 이전에 실행할 수 있습니다.

<multi_pre_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_pre_target_preparer>

전체 연산 순서는 다음과 같습니다.

  1. multi_pre_target_preparer setUp
  2. target_preparer setUp
  3. multi_target_preparer setUp
  4. multi_target_preparer tearDown
  5. target_preparer tearDown
  6. multi_pre_target_preparer tearDown

모든 다중 타겟 준비자는 요구되는 설정 순서에 따라 multi_target_preparer 또는 multi_pre_target_preparer로 선언할 수 있습니다.