Skip to content

Prueba: Productos – Reporte Inventario

Objetivo

Validar que el sistema permita generar reportes del historial de movimientos de inventario en los formatos PDF y Excel, asegurando que el proceso se ejecute correctamente y que el modal se mantenga visible mientras se generan los reportes.

Precondiciones

  • Usuario autenticado mediante el comando cy.login().
  • Acceso al dashboard del sistema (/dashboard)..
  • Existencia de productos registrados en el inventario con historial de movimientos.

Pasos Generales

  1. Ingresar al módulo de Inventario.
  2. Abrir el modal de Generar Reporte del primer producto disponible.
  3. Ingresar fechas de inicio y fin del periodo a consultar.
  4. Generar el reporte en formato PDF.
  5. Generar el reporte en formato Excel.
  6. Validar que el modal permanezca visible mientras se generan los archivos.

Resultado Esperado

  • El sistema debe permitir abrir el modal de reporte de historial correctamente.
  • Los campos de fecha inicial y fecha final deben ser editables.
  • Al hacer clic en los botones de PDF y Excel, los archivos deben generarse sin errores.
  • El modal debe permanecer visible mientras se ejecuta el proceso, garantizando que no haya cierres inesperados.

Explicación Detallada del Código

cy.visit("/inventario");
cy.url().should("include", "/inventario");

Explicación

  • Se accede directamente a la ruta /inventario.
  • Se valida con should("include") que la URL corresponda efectivamente al módulo de inventario.

Apertura del modal de reporte

cy.get('button[data-original-title="Generar reporte"]').first().click();

Explicación

  • Selecciona el primer botón que abre el modal de generación de reportes, ubicado junto a los productos listados en el inventario.

Ingreso de fechas

cy.get('input[name="fecha_inicial"]').clear().type("2025-10-01");
cy.get('input[name="fecha_final"]').clear().type("2025-12-07");

Explicación

  • Define el rango de fechas para el reporte del historial de movimientos.
  • Las fechas se ingresan directamente en los campos del modal visible.

Generación de reportes

cy.get('input[name="fecha_inicial"]').clear().type("2025-10-01");
cy.get('input[name="fecha_final"]').clear().type("2025-12-07");

Explicación

  • Ejecuta las acciones de exportación:
  • PDF: genera un archivo en formato imprimible.
  • Excel: descarga el reporte en formato excel.

Validación de cierre del modal

cy.get("div.modal-dialog:visible").should("exist");

Explicación

  • Tras guardar los cambios, se comprueba que el modal de ajuste se haya cerrado correctamente.

Resultados de la ejecución de la prueba

Escenario Acción Realizada Resultado Esperado Estado
1 Generación de reporte PDF Archivo PDF generado correctamente PASS
2 Generación de reporte Excel Archivo Excel generado correctamente PASS
3 Validación de persistencia del modal Modal permanece visible PASS