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ı
multi_target_preparer
,target_preparer
'ten sonrasetUp
'u yürütür.multi_target_preparer
, hedef temizleyicilerden öncetearDown
'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:
multi_pre_target_preparer setUp
target_preparer setUp
multi_target_preparer setUp
multi_target_preparer tearDown
target_preparer tearDown
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
.