Similar a un preparador de objetivos, un preparador de múltiples destinos permite configurar múltiples dispositivos juntos. Por ejemplo: Se usa cuando se conectan dos dispositivos por Bluetooth para realizar pruebas.
Interfaz base
La interfaz base es IMultiTargetPreparer
, que permite implementar un método setUp
para que se ejecute. Te recomendamos implementar nuestra clase abstracta básica BaseMultiTargetPreparer
, que proporciona una función de inhabilitación integrada para inhabilitar fácilmente un preparador.
Los preparadores de varios destinos también proporcionan directamente un método tearDown
para cualquier limpieza
una sola operación.
Recomendación
Recomendamos limitar cada preparador a una sola función principal. Esto permite una reutilización más fácil de los preparadores.
Consulta también la lista de preparados disponibles antes de agregar uno nuevo, para
evitar la duplicación del 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 objetivos. 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 operación
multi_target_preparer
ejecutasetUp
después detarget_preparer
.multi_target_preparer
ejecutatearDown
antes de los limpiadores de destino.
Esto no siempre permite el rendimiento de todos los pasos de configuración, por lo que es posible definir el preparador multiobjetivo como multi_pre_target_preparer
en el archivo XML 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 la operación es el siguiente:
multi_pre_target_preparer setUp
target_preparer setUp
multi_target_preparer setUp
multi_target_preparer tearDown
target_preparer tearDown
multi_pre_target_preparer tearDown
Cualquier preparador multiobjetivo se puede declarar como multi_target_preparer
o multi_pre_target_preparer
, según el orden de configuración requerido.