Pruebas automatizadas

Implementamos tests automatizados, mejorando la calidad del código y minimizando la posibilidad de que lleguen errores a producción.

Pruebas automatizadas

Construir software libre de errores (o bugs) es uno de los principales objetivos en cualquier proyecto. Sin embargo, somos humanos y hasta el mejor equipo comete errores. Por este motivo es necesario establecer una serie de mecanismos que nos permita detectar cualquier posible error en fases tempranas. Esto evitará que despleguemos bugs en el entorno de producción, o al menos los reduciremos al mínimo.

Las pruebas automatizadas son el complemento perfecto de las pruebas manuales. Programar este tipo de pruebas requiere una mayor inversión, pero repercute positivamente en la calidad de nuestro producto digital. Es sin duda una inversión que merece la pena realizar.

Tipos de pruebas automatizadas

Pruebas estáticas

Los tests estáticos se realizan analizando el código, sin necesidad de ejecutarlo. Pueden detectar deferentes tipos de bugs como por ejemplo: vulnerabilidades de seguridad, fallos de sintaxis o errores en el tipado.

Pruebas unitarias

Un test unitario se encarga de comprobar que una unidad de código funciona correctamente. Este tipo de pruebas se escriben para cada función o para cada método de una clases.

Pruebas de componente

Este tipo de tests comprueban que el componente se renderiza correctamente cuando recibe unas propiedades determinadas y que funciona correctamente cuando se lanzan los diferentes eventos.

Pruebas funcionales

Se centran en los requerimientos de negocio de una aplicación. Estas pruebas verifican el resultado de una acción, sin prestar atención a los estados intermedios del sistema mientras se lleva a cabo la ejecución.

Pruebas de integración

Las pruebas de integración se ejecutan después de las pruebas unitarias. Verifican que todos los elementos unitarios que componen el software, funcionan juntos de forma correctamente.

Pruebas end to end

Las pruebas end-to-end o de extremo a extremo, simulan la comportamiento de un usuario real. Se deben ejecutar en un entorno lo mas parecido posible al de producción.