Mirip dengan penyiapan target, penyiapan multi-target memungkinkan penyiapan beberapa perangkat secara bersamaan. Misalnya, penyiapan ini akan digunakan saat menghubungkan dua perangkat dengan Bluetooth untuk pengujian.
Antarmuka dasar
Antarmuka dasarnya adalah
IMultiTargetPreparer,
yang memungkinkan penerapan metode setUp untuk dieksekusi. Sebaiknya
terapkan class abstrak dasar
BaseMultiTargetPreparer,
yang menyediakan fitur penonaktifan bawaan untuk menonaktifkan penyiapan dengan mudah.
Penyiapan multi-target juga langsung menyediakan metode tearDown untuk operasi pembersihan apa pun.
Rekomendasi
Sebaiknya batasi setiap penyiapan ke satu fungsi utama. Hal ini memungkinkan penggunaan kembali penyiapan dengan lebih mudah.
Periksa juga daftar penyiapan yang tersedia sebelum menambahkan yang baru, untuk menghindari duplikasi pekerjaan. Penyiapan tersedia di
tools/tradefederation/core/src/com/android/tradefed/targetprep/multi/.
Tidak ada batasan jumlah perangkat yang dapat disiapkan oleh penyiapan multi-target. Semua perangkat tersedia di IInvocationContext antarmuka untuk diterapkan.
Konfigurasi XML
Tag objeknya adalah multi_target_preparer, misalnya:
<multi_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_target_preparer>
Urutan operasi
multi_target_preparermengeksekusisetUpsetelahtarget_preparer.multi_target_preparermengeksekusitearDownsebelum pembersih target.
Hal ini tidak selalu memungkinkan kinerja semua langkah penyiapan, sehingga mungkin
dalam XML untuk menentukan penyiapan multi-target sebagai multi_pre_target_preparer
dan mengeksekusinya sebelum instance target_preparer.
<multi_pre_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_pre_target_preparer>
Urutan operasi keseluruhan adalah sebagai berikut:
multi_pre_target_preparer setUptarget_preparer setUpmulti_target_preparer setUpmulti_target_preparer tearDowntarget_preparer tearDownmulti_pre_target_preparer tearDown
Penyiapan multi-target dapat dideklarasikan sebagai multi_target_preparer atau multi_pre_target_preparer, bergantung pada urutan penyiapan yang diperlukan.