Crear una API efectiva y profesional con Python y Flask, complementada con documentación clara y pruebas unitarias, puede facilitar significativamente cualquier proyecto de desarrollo. En pocos minutos, es posible generar estos tres componentes cruciales: el código, la documentación y las pruebas automáticas necesarias para proyectos eficientes y colaborativos.
¿Cómo crear rápidamente una API en Python con Flask?
Desarrollar una API utilizando Flask es un proceso simple y rápido. Al trabajar con Flask se puede establecer rápidamente diferentes métodos o endpoints, como el mostrado para el método GET denominado "saludo". Esta sencillez permite establecer estructuras claras en muy poco tiempo:
Crear el endpoint y definir claramente los métodos HTTP.
Documentar cada método efectivamente con herramientas integradas y reconocidas.
¿Qué beneficio ofrece integrar Swagger para documentar tu API?
Al integrar Swagger, se consigue una documentación automática y estructurada para la API desarrollada en Python. Swagger soporta claridad y transparencia al workflow:
Descripción detallada de cada método o endpoint.
Facilidad de uso y comprensión para otros desarrolladores o equipos involucrados en el proyecto.
¿Cómo realizar y ejecutar pruebas unitarias de manera práctica con Python?
Utilizar el módulo Unit Test de Python proporciona una forma clara y ordenada de validar que cada componente de la API cumple adecuadamente con su función. A continuación se detallan los pasos que facilitan la creación y ejecución de estas pruebas de manera sencilla:
Crear un archivo dedicado para pruebas fuera o dentro del directorio principal.
Nombrar típicamente el archivo con el formato: test_<nombredelarchivo>.py.
Especificar claramente la función o endpoint a probar.
Ejecutar fácilmente pruebas unitarias desde la terminal
Usar el comando:
python3 -m unittest test_app.py
Este comando ejecuta las pruebas unitarias definidas, específicamente utilizando el parámetro -m, que indica a Python que corra el módulo especificado como un script.
¿Qué hace exactamente el parámetro -m en Python?
El parámetro -m indica a Python que el módulo agregado debe ejecutarse como si fuera un script independiente. Es vital entender esta función para no depender solamente del copiar y pegar, sino comprender claramente el contexto y uso correcto. Al ejecutar este comando, se crea también automáticamente la carpeta __pycache__, que almacena los módulos necesarios ejecutados al correr las pruebas.
¿Cuáles son las buenas prácticas para mantener un commit profesional en proyectos colaborativos?
Al trabajar en equipo o preparar un commit para subir al repositorio, es importante asegurarse que cada commit integre tres componentes principales:
Código funcional para la API.
Documentación clara proporcionada por Swagger.
Pruebas unitarias que validen completamente la funcionalidad.
Cumplir con estas prácticas ayudará a mantener alta calidad en el código y facilitará significativamente la colaboración entre equipos. Aprender y utilizar Copilot para generar estas partes ahorra tiempo y asegura consistencia en el desarrollo de proyectos.
¿Qué te parece esta forma rápida y eficiente de desarrollar APIs y documentarlas?
No uso una buena gramática por que uso prompts en ingles
Bien presumido
Ciertamente, hay que revisar el código que genera Copilot. Yo, como estoy aprendiendo, le pido que incluya comentarios en el código, pero cuando eres usuario gratuito, hay que evitar hacer eso.
Me gusta Cursor más que GitHub Copilot, pero en los planes gratuitos se agota en dos días las llamadas, una pena. Porque está siendo de lo más entretenido
con platzi expert puedes tener la version pro
Las pruebas unitarias son un tipo de testing que verifica el correcto funcionamiento de pequeñas partes de código, llamadas "unidades". Estas pruebas se enfocan en validar cada componente de manera aislada, asegurando que cada función o método opere como se espera. En el contexto de programación, como se menciona en el material, puedes usar módulos como unittest en Python para implementar estas pruebas, lo que ayuda a detectar errores rápidamente y mejorar la calidad del software.
✨Desarrollo rápido de APIs con Python + Flask
🧩 1. LOS 3 PILARES DEL DESARROLLO PROFESIONAL
🔧 Código (Flask)
📄 Documentación (Swagger)
🧪 Pruebas unitarias (unittest)
✔️ Combinados, crean una API clara, funcional y lista para trabajar en equipo.
🚀 2. Crear una API en Flask de forma rápida
🔥 Flask = simplicidad + velocidad
🔻 ¿Qué debes hacer?
· ➤ Crear endpoints
· ➤ Definir métodos HTTP
· ➤ Mantener una estructura organizada
· ➤ Documentar desde el inicio
📌 Ejemplo típico: un endpoint GET llamado “saludo”.
📘 3. Swagger: documentación automática
📚 Swagger convierte tu API en una guía visual interactiva
🎯 Beneficios principales:
· ➤ Descripción clara de cada endpoint
· ➤ Fácil de leer para cualquier desarrollador
· ➤ Permite probar métodos desde la documentación
🧪 4. Pruebas unitarias con unittest
🧩 unittest = comprobar que cada pieza funciona correctamente
📝 Pasos:
1. Crear un archivo dedicado de pruebas
2. Nombrarlo como: test_nombredelarchivo.py
3. Indicar qué función o endpoint se va a probar
4. Ejecutar con:
python3 -m unittest test_app.py
💡 ¿Qué sucede al ejecutar?
· El parámetro -m hace que Python ejecute un módulo como si fuera un script.
· Se genera la carpeta pycache automáticamente.
⚙️ 5. ¿Qué hace realmente el parámetro -m?
🔍 -m → Ejecutar un módulo como script independiente
✔️ Te ayuda a entender el proceso sin depender de copiar y pegar comandos.
🧱 6. Buenas prácticas para un commit profesional
📥 Cada commit debería incluir:
· 🔧 Código funcional
· 📄 Documentación actualizada con Swagger
· 🧪 Pruebas unitarias completas
✔️ Esto asegura calidad, orden y mejor colaboración
⚡ Copilot puede acelerar la generación de código y documentación.
💡 Idea 12
La carpeta __pycache__ indica que Python está trabajando como debe.
💡 Idea 11
El parámetro -m no es magia: es ejecutar módulos con contexto correcto.
💡 Idea 10
Ejecutar tests desde la terminal te conecta con el ciclo real de desarrollo.
💡 Idea 9
Nombrar bien los tests es parte de pensar el sistema.
💡 Idea 8
unittest permite validar comportamiento sin herramientas externas complejas.
💡 Idea 7
Las pruebas unitarias no son un extra: son seguro de funcionamiento.
💡 Idea 6
Si otra persona no entiende tu endpoint, la API está incompleta.
💡 Idea 5
Swagger transforma una API técnica en algo usable por otros.
💡 Idea 4
Documentar mientras programás reduce errores futuros.
💡 Idea 3
Un endpoint simple bien definido vale más que diez rutas confusas.
💡 Idea 2
Flask permite crear endpoints claros en minutos, sin sobreingeniería
💡 Idea 1 ⭐⭐⭐⭐⭐
Una API profesional no es solo código, es código + documentación + tests.
Sí, puedes agregar Swagger en tus proyectos API de Spring Boot utilizando el IDE IntelliJ IDEA (IJ). Swagger es una herramienta popular para documentar APIs y se integra fácilmente en proyectos de Spring Boot. Para hacerlo, debes seguir estos pasos:
Añade las dependencias de Swagger en tu archivo pom.xml (si usas Maven) o en build.gradle (si usas Gradle).
Configura Swagger en tu aplicación agregando una clase de configuración que habilite Swagger.
Accede a la interfaz de Swagger en tu navegador para ver la documentación generada automáticamente.
Esto te permitirá tener una documentación clara y accesible de tu API.
en mi caso el parámetro de -m no me salía en copilot pero de igual forma corre el test, por eso dijo el Profe que no habrá repositorios por que en cada ordenador saldría distinto
No veo la opción para activar el modo agente de GitHub Copilot, este curso fue grabado antes de que saliera esa funcionalidad? se debería actualizar agregando una clase para explicar esa funcionalidad
HEYYY Si que me funciono pri Unit_test, Jeaapyyy !
Output :
st_app.py
Hello User
Hello Bryan from Flask API!
.Hello User
Hello MarianoBruno from Flask API!
.Hello User
Hello Guest from Flask API!
.
----------------------------------------------------------------------
Ran 3 tests in 0.003s
OK