Los verificadores de estado del sistema (SSC) se definen a nivel del paquete ejecutar entre cada módulo. Realizan verificaciones para determinar si el módulo cambió. y no restableció algunos estados determinados, como cambiar una propiedad del sistema valor.
Las SSC se utilizan principalmente para garantizar que los escritores de módulos no se olviden de limpiar después de sus pruebas; pero si lo hacen, dejan un rastro para que se pueda abordar.
Un uso secundario es restablecer el estado original cuando sea posible, por ejemplo, cerrar el bloqueo de teclas si se dejó abierto.
Definición de XML del verificador de estado del sistema
<system_checker class="com.android.tradefed.suite.checker.KeyguardStatusChecker" />
<system_checker class="com.android.tradefed.suite.checker.LeakedThreadStatusChecker" />
<system_checker class="com.android.tradefed.suite.checker.SystemServerStatusChecker" />
Las SSC se definen en la etiqueta system_checker
de la configuración de Tradefed
XML.
Implementación
Cada SSC debe implementar la ISystemStatusChecker
interfaz,
que proporciona los dos métodos principales preExecutionCheck
y postExecutionCheck
que se ejecutan antes y después de la ejecución de cada módulo.
Es posible que un verificador implemente solo uno de los dos o ambos si es necesario verificar el estado antes del módulo y compararlo con el estado después del módulo.
Varios ejemplos
implementaciones
que existen en Tradefed. Se recomienda que cada implementación se enfoque en una sola verificación para mejorar la reutilización. Por ejemplo, SystemServerStatusCheck
verifica si el proceso system_server
se reinició en el dispositivo durante la ejecución del paquete de pruebas. En postExecutionCheck
, llama a deviceSoftRestarted
, que se define en NativeDevice
para verificar si se reinició el proceso system_server
.
Cada operación devuelve
StatusCheckerResult
,
lo que permite que el agente decida si hay información adicional, como un informe de errores,
debe capturarse.
¿Dónde se definen en CTS?
Los verificadores de estado del sistema CTS se definen en /test/suite_harness/tools/cts-tradefed/res/config/cts-system-checkers.xml.
Cómo encontrar fallas del verificador
De forma predeterminada, las fallas del verificador del sistema se muestran solo en los registros y como informes de errores.
capturado para la invocación con el nombre que sigue el formato
bugreport-checker-post-module-<module name>.zip
Esto te permite averiguar después de qué módulo se generó el informe de errores.
Es posible hacer que el verificador del sistema informe como una falla de prueba si configuras la opción --report-system-checkers
en true
. Esto da como resultado un
la ejecución de prueba se muestra como fallida, y el motivo es el verificador de estado
una verificación en particular.