Skip to content

Prueba: Productos – Eliminar Producto

Objetivo

Verificar que el sistema permita eliminar un producto existente desde el módulo Gestión Financiera → Productos, mostrando una confirmación antes de eliminarlo y asegurando que la acción se ejecute correctamente sin errores.

Precondiciones

  • Usuario autenticado mediante el comando cy.login().
  • Acceso al dashboard del sistema (/dashboard)..
  • Existencia de al menos un producto previamente registrado en el sistema.
  • Acceso al módulo de Productos mediante la ruta /productos.
  • Confirmación visual del modal de eliminación (alerta de tipo SweetAlert2).

Pasos Generales

  1. Iniciar sesión en el sistema.
  2. Ingresar al módulo Productos.
  3. Seleccionar el primer producto disponible en la lista.
  4. Hacer clic en el botón de Eliminar.
  5. Confirmar la acción en el modal emergente.
  6. Verificar que el modal de confirmación desaparezca tras la eliminación.

Resultado Esperado

  • El sistema debe mostrar un modal de confirmación antes de eliminar el producto.
  • El usuario debe poder confirmar la acción correctamente.
  • Tras la confirmación, el modal debe desaparecer del DOM.
  • El producto seleccionado debe eliminarse de la lista
  • No deben presentarse errores ni alertas no controladas durante el proceso.

Explicación Detallada del Código

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

Explicación

  • Se navega directamente al módulo de Productos.
  • Se valida mediante cy.url().should("include", "/productos") que la URL actual corresponda al módulo esperado, confirmando la correcta navegación.

Eliminación del producto

cy.get('button[onclick^="mostrarAlertaEliminar"]').first().click();

Explicación

  • Se busca el primer botón de eliminación disponible en la lista de productos.
  • El selector onclick^="mostrarAlertaEliminar" identifica los botones que activan el modal de confirmación.
  • Se hace clic en el primero, simulando la eliminación del primer producto visible.

Confirmación de eliminación

cy.get("div.swal2-popup.swal2-modal").should("be.visible");
cy.get("button.swal2-confirm.swal2-styled").click();

Explicación

  • Se valida que el modal de confirmación (tipo SweetAlert2) se muestre correctamente.
  • Se ubica y hace clic en el botón de confirmación (swal2-confirm.swal2-styled) para proceder con la eliminación.
  • Esta acción debe desencadenar el cierre del modal y la eliminación del registro correspondiente.

Validación del cierre del modal

cy.get("div.swal2-popup.swal2-modal").should("not.exist");

Explicación

  • Se verifica que, tras confirmar la eliminación, el modal desaparezca completamente del DOM.
  • La ausencia de este elemento confirma que la operación finalizó sin errores.

Resultados de la ejecución de la prueba

Escenario Acción Principal Modal de Confirmación Estado Final del Modal Estado
1 Eliminar primer producto Mostrado correctamente Cerrado tras confirmación PASS