Çok hedefli hazırlayanlar

Hedef hazırlayıcıya benzer şekilde, çoklu hedef hazırlayıcı da birden fazla cihazın birlikte kurulmasına olanak tanır. Örneğin, test için iki cihazı Bluetooth ile bağlarken bu yöntem kullanılır.

Temel arayüz

Temel arayüz IMultiTargetPreparer'dur. Bu arayüz, setUp yönteminin uygulanmasını ve yürütülmesini sağlar. Önerilerimiz: temel soyut sınıfımızı uygulama BaseMultiTargetPreparer, entegre bir devre dışı bırakma özelliği sağlar.

Çoklu hedef hazırlayıcılar, herhangi bir temizlik için doğrudan tearDown yöntemi de sağlar. işlemidir.

Öneri

Her hazırlayıcıyı tek bir ana işlevle sınırlandırmanızı öneririz. Bu sayede hazırlayanların daha kolay yeniden kullanılması sağlanır.

Ayrıca yeni bir hazırlayıcı eklemeden önce mevcut hazırlayıcıların listesini kontrol edin. yinelenen işlerden kaçının. Hazırlayıcılar tools/tradefederation/core/src/com/android/tradefed/targetprep/multi/'te kullanılabilir.

Çok hedefli bir hazırlayıcının kurabileceği cihaz sayısıyla ilgili bir sınır yoktur. Tüm cihazlar şurada mevcuttur: IInvocationContext kolay bir yoludur.

XML yapılandırması

Nesne etiketi multi_target_preparer'tir. Örneğin:

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

İşlem sırası

  1. multi_target_preparer, target_preparer'ten sonra setUp'u yürütür.
  2. multi_target_preparer, hedef temizleyicilerden önce tearDown'i yürütür.

Bu, her zaman tüm kurulum adımlarının gerçekleştirilmesine izin vermez. Bu nedenle, XML'de çok hedefli hazırlayıcıyı multi_pre_target_preparer olarak tanımlamak ve target_preparer örnekleri öncesinde yürütmek mümkündür.

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

Genel işlem sırası aşağıdaki gibidir:

  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

Birden çok hedefli hazırlayıcı, multi_target_preparer veya gerekli kurulum sırasına bağlı olarak multi_pre_target_preparer.