Proyecto desarrollado con TDD

2/23
Recursos
Transcripción

¿Qué vamos a construir con TDD?

El objetivo principal de nuestro proyecto es construir una aplicación de gestión de repositorios utilizando la metodología TDD (Desarrollo Dirigido por Pruebas). Esta práctica es fundamental para garantizar que nuestro código no solo funcione correctamente, sino que también se mantenga de alta calidad a través del tiempo. Aquí te presento un vistazo al proyecto que desarrollaremos juntos.

Primero, visualicemos la estructura completa de un proyecto hecho en Laravel, donde utilizaremos una herramienta específica enfocada en probar nuestro código PHP. La herramienta de testeo es esencial para verificar que el código cumple con los estándares necesarios. Dentro del proyecto, encontrarás una serie de carpetas, incluida una dedicada exclusivamente a las pruebas llamada TES. Allí se alojarán dos tipos de pruebas:

  • Prueba unitaria: Enfocada en verificar el comportamiento de una única unidad de código.
  • Prueba de características: Dirigida a evaluar la interacción de múltiples componentes y el flujo completo de funcionalidades.

Durante el curso, trabajarás en ambas carteras para comprender cuándo crear una nueva clase o archivo de prueba, así como la diferencia entre las pruebas unitarias y las de características.

¿Cómo funciona el proyecto y sus funcionalidades?

Este proyecto usa la biblioteca Tailwind CSS para el diseño y la presentación. En la interfaz principal, encontramos un listado de repositorios que cualquier usuario puede visualizar. Aquí, los participantes de la comunidad pueden hacer públicos sus proyectos y darse a conocer en el ámbito de desarrollo.

Funcionalidades del CRUD

Un sistema CRUD (Crear, Leer, Actualizar, Eliminar) te permitirá gestionar tus repositorios:

  • Crear: Añadir nuevos repositorios.
  • Ver: Visualizar tus propios repositorios.
  • Editar: Hacer modificaciones en los repositorios existentes.
  • Eliminar: Quitar repositorios que ya no necesites.

El desafío radica en crear un sistema robusto donde solo puedas manipular tus propios repositorios. Intentar visualizar, editar o eliminar un repositorio ajeno no será posible, asegurando la privacidad y seguridad de los recursos de cada usuario.

¿Cómo se maneja el acceso y la validación?

Además de las funcionalidades básicas de un CRUD, implementaremos políticas de acceso para asegurar que solo puedas administrar tus propios recursos. Aquí se incluyen:

  • Validación de usuario: Al iniciar sesión, solo podrás ver y modificar tus propios repositorios.
  • Acceso restringido: Los repositorios de otros usuarios no serán accesibles para ti, limitando cualquier acción de tipo editar o eliminar.

Este es un sistema integral que combina TDD y políticas de acceso, garantizando así la fiabilidad y seguridad a lo largo del ciclo de vida del desarrollo del software. La comprensión y aplicación de las pruebas, junto con Laravel y Tailwind CSS, te proporcionará una experiencia enriquecedora en el desarrollo de aplicaciones web.

¡Te animo a seguir aprendiendo sobre el desarrollo dirigido por pruebas! Esta metodología no solo mejorará tu habilidad técnica, sino que también te brindará la confianza para construir aplicaciones escalables y mantenibles.

Aportes 4

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Lo que me encanta del testing es que al final es casi como hacer magia, mientras programas solamente estás interactuando con la consola, pero ya cuando vas a maquetar es cuando empiezas a ver que tú solo pones el código HTML y uno que otro código de PHP y mágicamente funciona! Es la magia de haber probado antes todo con testing 😄

Me gusta que el proyecto además de tener un CRUD, vamos a tener políticas de acceso y un sistema de validación. 🚀

wow

Muy bueno todo lo que va a abarcar el curso!