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

Otros artículos de esta serie

  1. Lista de reproducción en nuestro canal de Youtube
  2. Symfony 5: La Vía Rápida | Paso 1 – Revisando tu entorno de trabajo
  3. Symfony 5: La Vía Rápida | Paso 2 – Presentando el proyecto
  4. Symfony 5: La Vía Rápida | Paso 3 – Desde cero hasta producción
  5. Symfony 5: La Vía Rápida | Paso 4 – Git, composer y Symfony Flex
  6. Symfony 5: La Vía Rápida | Paso 5 – Solucionando problemas
  7. Symfony 5: La Vía Rápida | Paso 6 – Creando nuestra primera página
  8. Symfony 5: La Vía Rápida | Paso 7 – Creando una base de datos con docker
  9. Symfony 5: La Vía Rápida | Paso 8 – Definiendo la estructura de datos
  10. Symfony 5: La Vía Rápida | Paso 9 – Configurando el panel de administración
  11. Symfony 5: La Vía Rápida | Paso 10 – Construyendo la interfaz de usuario
  12. Symfony 5: La Vía Rápida | Paso 11 – Almacenando las sesiones en redis
  13. Symfony 5: La Vía Rápida | Paso 12 – Escuchado eventos (events and subscribers)
  14. Symfony 5: La Vía Rápida | Paso 13 - Gestionando el ciclo de vida de los objetos de doctrine
  15. Symfony 5 La Vía Rapida | Paso 14 - Formularios - Parte 1
  16. Symfony 5 La Vía Rápida | Paso 14 - Formularios - Parte 2 - Subida de archivos
  17. Symfony 5 La Vía Rápida | Paso 15 - Asegurando el panel de administración
  18. Symfony 5 La Vía Rápida | Paso 16 - Previniendo spam con una API
  19. Symfony 5 La Vía Rápida | Paso 17 – Pruebas Automatizadas
  20. Symfony 5 La Vía Rápida | Paso 18 – Volviéndonos Asíncronos
  21. Symfony 5 La Vía Rápida - Paso 19 - Tomando decisiones con un workflow
  22. Symfony 5 La Vía Rápida - Paso 20 - Envío de correos electrónicos a los administradores
  23. Symfony 5 La Vía Rápida | Paso 21 - Almacenando en caché para mejorar el rendimiento

¿Quieres comprarme un café?

  • Bitcoin
  • Ethereum
Scan to Donate Bitcoin to bc1qevxv68nfq427zfkwdjg7802dt00t3h3ulq0rxa

Dona Bitcoin a NeuroSimbiosis

Escanea el código QR o copia la dirección de abajo para realizar donaciones

Scan to Donate Ethereum to 0x47742BE8B21052ce25b33d6A0e09113826AF341f

Dona Ethereum a NeuroSimbiosis

Escanea el código QR o copia la dirección de abajo para realizar donaciones

Deja un comentario