El proyecto automation-arqc organiza sus archivos siguiendo una separación estricta de responsabilidades: los page objects modelan la interfaz, los fixtures gestionan el ciclo de vida de la sesión y los datos de prueba, y las suites contienen únicamente la lógica de los tests. Esta división permite escalar el proyecto a nuevos módulos sin modificar lo que ya funciona, y hace que cada archivo tenga exactamente una razón para cambiar.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Giofelix/Proyecto-automatizacion-Empresa/llms.txt
Use this file to discover all available pages before exploring further.
Árbol de directorios
Principios de organización
¿Por quépages/common/ separado de pages/modulos/?
Las páginas comunes (menu-navegacion.js, acciones-crud.js, componentes-tabla.js) encapsulan elementos que aparecen en todas las pantallas del sistema: el acordeón de navegación lateral, los botones CRUD del toolbar y los controles de la tabla paginada. Separarlas evita duplicación: si el selector del botón de filtro cambia en producción, solo se actualiza componentes-tabla.js y todas las suites se benefician automáticamente. Las páginas de módulo, en cambio, modelan formularios específicos (pestañas, combos, campos de un dominio concreto) y tienen una jerarquía que refleja la navegación real del sistema.
¿Por qué fixtures/ tiene su propia carpeta y sub-carpeta reteica/?
Los fixtures son infraestructura de prueba, no lógica de aplicación. Tenerlos en su propio árbol deja claro que auth.fixture.js provee la sesión base y que los fixtures de datos (tercero.fixture.js, contribuyente.fixture.js, establecimiento.fixture.js) son capas que se apilan sobre esa sesión. La sub-carpeta reteica/ anticipa que en el futuro podrían existir fixtures para otros módulos (Predial, ICA, etc.) sin mezclarlos.
¿Por qué las suites espejean la estructura de módulos?
La carpeta suites/Reteica/ tiene exactamente un archivo .spec.js por pantalla modelada en pages/modulos/reteica/. Esta correspondencia uno-a-uno facilita navegar: si un test falla en terceros.spec.js, el desarrollador sabe que el page object relevante está en pages/modulos/reteica/archivos/terceros.page.js. Los flujos multi-pantalla viven en suites/Reteica/e2e/ para dejar claro que cruzan varias capas del sistema.
Explora más
Page Objects
Cómo están diseñadas las clases POM comunes y de módulo.
Fixtures
Ciclo de vida de autenticación y datos de prueba con setup/teardown automático.
Test Suites
Niveles de test, etiquetado obligatorio y sintaxis BDD con gherkin-lite.
Ejecutar Tests
Comandos npm, filtros por tag y pipeline de Jenkins.