Подготовители с несколькими целями

Как и средство подготовки целевых устройств, средство подготовки нескольких целевых устройств позволяет настраивать несколько устройств одновременно. Например, это может понадобиться при подключении двух устройств по Bluetooth для тестирования.

Базовый интерфейс

Базовый интерфейс – IMultiTargetPreparer, который позволяет реализовать метод setUp. Мы рекомендуем реализовать наш базовый абстрактный класс 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_preparer выполняет setUp после target_preparer.
  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 в зависимости от того, в каком порядке требуется выполнить настройку.