QA Control Center para Appium Practice
El Desafío
El proyecto necesitaba convertir una suite mobile grande en un producto QA de portafolio, no solo en una carpeta de pruebas Pytest. La app Appium Practice expone 12 modulos visibles mas flujos Expand Bank, por lo que la suite debia cubrir caminos felices, negativos, limites, accesibilidad, confiabilidad, rendimiento y seguridad OWASP MASVS.
El riesgo principal era operativo: las suites mobile largas pueden volver inestable el emulador Android. Los resultados tambien necesitaban revisarse fuera de la terminal, con screenshots, page source, logs, manifests de video y reportes descargables que hicieran el trabajo creible en GitHub y frente a clientes.
La Solución
Construí un QA Control Center local conectado con Appium 3, UiAutomator2, Android Emulator, ADB y Pytest. El dashboard expone salud del entorno, estado de Appium y emulador, validacion Play Store, modo secuencial, historial de corridas recientes y catalogo bilingue de pruebas.
- Logica del framework: las fixtures de Pytest crean el driver desde capabilities Android explicitas, la configuracion sale de .env y los Page Objects separan locators/acciones de negocio de las aserciones.
- Logica de ejecucion: las pruebas corren por fases para evitar conflictos del emulador, mientras el dashboard puede ejecutar un nodeid especifico o descubrir el catalogo con pytest --collect-only.
- Logica de evidencia: cada corrida disparada desde el dashboard puede generar paquetes HTML, Markdown, JSON y ZIP con logs, screenshots, XML, manifests de video y artefactos por test.
- Logica de seguridad: el dashboard Node.js solo expone acciones QA permitidas, evitando convertir el navegador en una consola libre.
Dashboard oficial del QA Control Center con Appium OK y Emulator OK
Emulador Android ejecutando The Practice App usada por la suite Appium
Impacto y Resultados
La plataforma queda como un caso de estudio mobile completo: el dashboard en vivo muestra Appium OK y Emulator OK, The Practice App esta activa en el emulador Android y el catalogo documenta 140 tests descubiertos por Pytest.
Las areas cubiertas incluyen Counter, Echo Message, Languages, Countries List, Gesture Demo, Touch Me, Scale Image, Drag and Drop, Alert Dialog, WebView, Animation Demo y Expand Bank. La cobertura bancaria incluye Auth, Make Payment, Mortgage, Expense y Boundary flows. La seguridad incluye baseline OWASP MASVS y checks black-box extendidos con 11 checks passing y 1 xfail trazado por exposicion de Android backup.