Al igual que un preparador de destino, un preparador de varios destinos permite configurar varios dispositivos a la vez. Por ejemplo, esto se usaría cuando se conectan dos dispositivos con Bluetooth para realizar pruebas.
Interfaz base
La interfaz base es
IMultiTargetPreparer,
que permite implementar un método setUp para que se ejecute. Te recomendamos
que implementes nuestra clase abstracta básica
BaseMultiTargetPreparer,
que proporciona una función de inhabilitación integrada para inhabilitar un preparador con facilidad.
Los preparadores de varios destinos también proporcionan directamente un método tearDown para cualquier operación de limpieza.
Recomendación
Te recomendamos que limites cada preparador a una sola función principal. Esto permite una reutilización más sencilla de los preparadores.
Además, consulta la lista de preparadores disponibles antes de agregar uno nuevo para evitar duplicar el trabajo. Los preparadores están disponibles en
tools/tradefederation/core/src/com/android/tradefed/targetprep/multi/.
No hay límite para la cantidad de dispositivos que puede configurar un preparador de varios destinos. Todos los dispositivos están disponibles en IInvocationContext de la interfaz para implementar.
Configuración de XML
La etiqueta del objeto es multi_target_preparer. Por ejemplo:
<multi_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_target_preparer>
Orden de las operaciones
multi_target_preparerejecutasetUpdespués detarget_preparer.multi_target_preparerejecutatearDownantes de los limpiadores de destino.
Esto no siempre permite realizar todos los pasos de configuración, por lo que es posible
definir en el XML el preparador de varios destinos como multi_pre_target_preparer
y ejecutarlo antes de las instancias de target_preparer.
<multi_pre_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_pre_target_preparer>
El orden general de las operaciones es el siguiente:
multi_pre_target_preparer setUptarget_preparer setUpmulti_target_preparer setUpmulti_target_preparer tearDowntarget_preparer tearDownmulti_pre_target_preparer tearDown
Cualquier preparador de varios destinos se puede declarar como multi_target_preparer o multi_pre_target_preparer, según el orden de configuración que se requiera.