Symfony 5 La Vía Rápida | Paso 17 – Pruebas Automatizadas

En el proceso de desarrollo de software hay dos temas que siempre son pasados de largo, la documentación y las pruebas. En mi experiencia la posibilidad que tenemos hoy en día de automatizar las pruebas en lugar de tener varias personas que se pongan a probar nuestras aplicaciones o mucho peor, tener que probarlas nosotros mismos, es uno de los inventos más importantes que se haya logrado.

Hoy vamos a hablar de cómo automatizar las pruebas en nuestra aplicación. Para esto, nos tocará hablar de los tipos de pruebas y discutir un poco sobre cuando es conveniente realizar uno sobre otro tipo.

Para la selección de mis proyectos de pruebas automatizadas lo dejo bien simple.

Por un lado tenemos las pruebas unitarias, que tienen como objetivo probar una funcionalidad muy específica del proyecto, las utilizo cuando necesito validar cálculos o resultados en donde la funcionalidad actúa como una caja negra, son perfectas para librerías o para cuando creamos un bundle que utilizaremos en varios proyectos, ya que nos ayuda a asegurarnos que no estamos dejando fallas con las actualizaciones y modificaciones que vamos realizando

Por el otro lado, están las pruebas funcionales, que no se orientan a probar algo específico sino que más bien se suelen utilizar para simular una persona que ejecuta una funcionalidad completa de la aplicación como bien podría ser la navegación principal de la web o los envíos de formularios.

Antes que nada, quiero aclarar que antes de escribir las pruebas hay que pensarlas y diseñarlas, pero puedo asegurar, con mucha convicción, que hacer el esfuerzo de agregar pruebas automatizadas a un proyecto y tomar esta decisión en la etapa más temprana del proyecto, va a ahorrarte mucho esfuerzo en la etapa más difícil del ciclo de vida del software: el mantenimiento

Hoy hicimos un recorrido de alto nivel entre varias funcionalidades para realizar pruebas automatizadas, que nos ayudan a quedarnos tranquilos cuando vamos tocando el código de nuestra aplicación y también queda como un respaldo documental de cómo debe funcionar. Existen muchas otras cosas que podemos hacer, pero esto ya nos da una buena idea sobre todo lo que ya disponemos fácilmente, por lo que ahora no puden pensar que contar con pruebas automatizadas es algo imposible de lograr.

En la descripción te dejo varios enlaces interesantes como la lista de los asserts para validar los resultados esperados, la documentación de phpunit, la librería Faker que permite generar datos de ejemplos como nombres de personas, apellidos, paises y muchos otros. Assí también te dejo la documentación sobre el componente CssSelector que nos permite filtrar la estructura del DOM de la página para realizar pruebas, la documentación de Symfony panther y la de makefile

En el siguiente video, vamos a hablar sobre el componente messenger de symfony, que nos permitirá adentrarnos en el mundo de lo asíncrono

[sc name=»posts_symfony5_la_via_rapida» ]

Descubre más desde Neurosimbiosis

Suscríbete y recibe las últimas entradas en tu correo electrónico.

1 comentario en “Symfony 5 La Vía Rápida | Paso 17 – Pruebas Automatizadas”

  1. Pingback: No todo es unitario: La importancia de elegir bien las pruebas automatizadas – Neurosimbiosis

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *