Cómo consultar el estado del sistema

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.