Prueba: Terceros – Eliminar Terceros
Objetivo
Validar que el sistema permita eliminar correctamente el último tercero agregado en cada categoría (clientes, proveedores, empleados y otros) desde el módulo de Terceros.
Precondiciones
- Usuario autenticado mediante el comando
cy.login(). - Acceso al dashboard del sistema
(/dashboard). - Deben existir registros previos en las tablas de cada categoría (clientes, proveedores, empleados, otros) para poder ejecutar la eliminación.
- El sistema debe estar desplegado y accesible desde la URL configurada.
Pasos Generales
- Ingresar al sistema.
-
Para cada categoría de terceros (
clientes,proveedores,empleados,otros): -
Entrar al módulo Terceros (
/terceros). - Seleccionar el tab correspondiente a la categoría.
- dentificar el último registro visible en la tabla.
- Hacer clic en el botón Eliminar.
- Confirmar la acción en el SweetAlert2 que aparece.
- Verificar que el modal de confirmación desaparece y que la eliminación se completa.
Resultado Esperado
- El sistema debe:
- Mostrar correctamente el modal de confirmación al presionar el botón “Eliminar”.
- Eliminar el registro seleccionado al confirmar la acción.
- Cerrar el modal de SweetAlert2 tras la eliminación.
- Actualizar la tabla, reflejando que el registro fue eliminado.
Explicación Detallada del Código
Definición de categorías
Explicación
- Se definen las cuatro categorías de terceros sobre las que se iterará.
- Cada categoría representa una pestaña diferente en la interfaz del módulo de terceros.
Iteración y eliminación
categorias.forEach((categoria) => {
it(`Debe eliminar el último ${categoria} agregado`, () => {
cy.visit("/terceros");
cy.get(`#${categoria}-tab`).click();
cy.get(`#${categoria}`)
.find('button[onclick="mostrarAlertaEliminar(this)"]')
.last()
.click();
});
});
Explicación
- Se recorre cada categoría individualmente con
forEach. - Se navega al módulo
/terceros. - Se selecciona el tab correspondiente usando su ID (
#clientes-tab,#proveedores-tab, etc.). - Se localiza el último botón de eliminación en la tabla (
.last()) y se hace clic.
Confirmación de eliminación
cy.get("div.swal2-popup.swal2-show")
.should("be.visible")
.within(() => {
cy.get("button.swal2-confirm.swal2-styled").click();
});
cy.get("div.swal2-popup").should("not.exist");
Explicación
- Espera a que aparezca el modal SweetAlert2 que solicita confirmación.
- Dentro del modal, hace clic en el botón de confirmación (“Sí, eliminar”).
- inalmente, verifica que el modal desaparece, indicando que la acción se completó correctamente.
Resultados de la ejecución de la prueba
| Categoría | Acción ejecutada | Confirmación visible | Eliminación exitosa | Resultado final |
|---|---|---|---|---|
| Clientes | Clic en botón "Eliminar" del último registro | Sí | Sí | Registro eliminado |
| Proveedores | Clic en botón "Eliminar" del último registro | Sí | Sí | Registro eliminado |
| Empleados | Clic en botón "Eliminar" del último registro | Sí | Sí | Registro eliminado |
| Otros | Clic en botón "Eliminar" del último registro | Sí | Sí | Registro eliminado |