Para integrar pruebas en un servicio de pruebas continuas de la plataforma, deben cumplir con los lineamientos de esta página y seguir este flujo recomendado.
- Usa el sistema de compilación de Soong para la configuración de pruebas simples.
- Usa la asignación de pruebas para crear reglas de pruebas previas y posteriores al envío directamente en el árbol de origen de Android.
- Ejecuta pruebas de forma local con Atest.
Tipos de pruebas
Los tipos de pruebas admitidos son los siguientes:
- Las pruebas de instrumentación admiten pruebas funcionales y de métricas. Consulta Prueba tu app para orientación general sobre las pruebas de apps.
- GoogleTest (GTest) admite los
siguientes tipos de pruebas:
- GTests funcionales con el framework de GTest
- Pruebas de métricas con
google-benchmark
- Pruebas de host JAR con JUnit
Las pruebas funcionales realizan aserciones de aprobación o falla en los casos de prueba, mientras que las pruebas de métricas suelen realizar una acción de forma repetida para recopilar métricas de tiempo.
Con el formato de entrada/salida estandarizado, se elimina la necesidad de análisis y procesamiento posterior de resultados personalizados por prueba, y se pueden usar agentes de prueba genéricos para todas las pruebas que se ajusten a la convención. Consulta la Descripción general de Trade Federation para obtener información sobre el framework de pruebas continuas incluido en Android.
Lineamientos para los casos de prueba
Se espera que los casos de prueba que se ejecutan a través del servicio de pruebas continuas sean herméticos, lo que significa que todas las dependencias se declaran y se proporcionan con las pruebas. Consulta Hermetic Servers en el blog de pruebas de Google para comprender este principio. En resumen, las pruebas herméticas no requieren lo siguiente:
- Acceso con la Cuenta de Google
- Conectividad configurada (telefonía, Wi-Fi, Bluetooth o NFC)
- Parámetros de prueba pasados
- Configuración o desconfiguración realizada por el agente de prueba para un caso de prueba específico