Saltar al contenido principal
Formación DatIACode

Testing en Python con Pytest

Aprende a testear Python de forma profesional con pytest: fixtures, parametrización y mocking aplicados a código real, testing de APIs FastAPI, cobertura con criterio y tests integrados en CI.

Nivel
Intermedio
Duración
16 horas
Modalidades
Online en directo · In-company · A medida
Dirigido a
Desarrolladores Python que quieren incorporar el testing como práctica profesional.
Sobre el curso

¿Qué es este curso y por qué te interesa?

El código sin tests se paga: cada cambio es un riesgo, cada refactor se pospone y cada despliegue se hace con los dedos cruzados. Los equipos que testean no van más lentos, van más seguros, y a medio plazo más rápido. Pytest es la herramienta con la que el ecosistema Python ha hecho del testing algo asumible: tests legibles, poco código ceremonial y un sistema de extensión que cubre desde el script hasta el microservicio.

Este curso enseña pytest a fondo y con orden: de los primeros tests y la organización de la suite a las piezas que marcan la diferencia en proyectos reales —fixtures para preparar estado sin duplicación, parametrización para multiplicar casos sin multiplicar código y mocking para aislar dependencias externas como bases de datos o APIs de terceros.

La segunda mitad lleva el testing al terreno profesional: cobertura medida con criterio y no como métrica vacía, testing de APIs construidas con FastAPI, un enfoque pragmático del TDD —cuándo compensa y cuándo no— y la integración de la suite en un pipeline de CI para que ningún cambio llegue a main sin pasar los tests.

Qué aprenderás

Capacidades que adquirirás

  • Escribir y organizar tests con pytest: estructura de la suite, asserts y convenciones.
  • Usar fixtures para preparar y compartir estado de test sin duplicar código.
  • Multiplicar casos de prueba con parametrización y aislar dependencias con mocking.
  • Testear APIs FastAPI: endpoints, validaciones, autenticación y base de datos de test.
  • Medir cobertura con criterio e integrar la suite en un pipeline de CI.
Objetivos

Objetivos del curso

  1. 01Adoptar pytest como herramienta de testing con sus convenciones e idiomas propios.
  2. 02Diseñar fixtures con el alcance adecuado: función, módulo y sesión.
  3. 03Aplicar mocking y monkeypatching para aislar el código de sus dependencias externas.
  4. 04Testear una API FastAPI completa con TestClient y bases de datos de prueba.
  5. 05Practicar un TDD pragmático: escribir el test antes cuando aporta, sin dogmatismo.
  6. 06Automatizar la ejecución de tests en CI con umbrales de cobertura razonables.
A quién va dirigido

¿Es este curso para ti o para tu equipo?

Desarrolladores Python que quieren incorporar el testing como práctica profesional.

Desarrolladores Python sin hábito de testing

Perfiles que escriben código de producción pero prueban a mano, y necesitan incorporar tests sin frenar su ritmo.

Desarrolladores de APIs y backend

Programadores que construyen servicios con FastAPI u otros frameworks y quieren garantizar su comportamiento con tests.

Perfiles de datos y automatización

Analistas e ingenieros cuyos scripts y pipelines se han vuelto críticos y ya no pueden fallar en silencio.

Temario

Temario completo

Programa estructurado en módulos. Cada itinerario in-company se ajusta al nivel y a los objetivos concretos del equipo.

    • Por qué testear y qué testear: el coste real del código sin pruebas.
    • Anatomía de un test: arrange, act, assert con los asserts nativos de pytest.
    • Organización de la suite: conftest.py, convenciones y descubrimiento de tests.
    • Ejecución selectiva: marcadores, filtros por nombre y opciones útiles de la CLI.
Metodología

Cómo se imparte

Práctica desde la primera sesión

Cada bloque combina explicación, demostración y laboratorio. Los alumnos trabajan sobre casos reales aplicables a su contexto profesional.

Casos de cliente

En programas in-company partimos de los procesos y datos del cliente. La formación deja de sonar genérica y empieza a resolver problemas concretos.

Materiales de apoyo

Los participantes reciben código, plantillas y guías reutilizables tras la formación. Lo que se aprende se mantiene en el día a día.

Adaptación al nivel del equipo

Antes de impartir, hacemos un breve diagnóstico y ajustamos profundidad y ritmo. La formación no se queda corta ni avanza por encima del grupo.

Modalidades

Modalidades disponibles

Cada formato puede adaptarse al ritmo y al contexto operativo de la organización.

Online en directo

Sesiones en streaming con interacción en vivo, ejercicios guiados y resolución de dudas.

In-company

Programa diseñado a medida y impartido para un único equipo o organización.

A medida

Itinerario completamente personalizado: temario, duración, formato y casos del cliente.

Beneficios para empresas

¿Por qué contratar este programa para tu equipo?

La formación no se diseña contra un examen, se diseña contra un objetivo de negocio.

  • Mejora de productividad real en el puesto de trabajo.
  • Actualización de competencias clave para el negocio.
  • Mayor autonomía técnica y reducción de dependencia externa.
  • Aplicación práctica inmediata sobre procesos del cliente.
  • Mejor adopción tecnológica con criterios profesionales.
  • Preparación para proyectos de IA, datos, automatización o desarrollo.
Formación bonificada

¿Se puede gestionar como formación bonificada?

Este curso puede plantearse como formación para empresas y, según las condiciones de cada organización, podría gestionarse dentro de iniciativas de formación bonificada. En DatIACode te ayudamos a estructurar la propuesta formativa y la documentación necesaria para su valoración.

Requisitos previos

¿Qué necesitas saber antes de empezar?

  • Experiencia programando en Python: funciones, clases básicas y módulos.
  • Manejo básico de Git y de la terminal.
  • Conocimiento básico de APIs REST recomendado para el bloque de FastAPI.
Aplicaciones

Cómo se aplica lo aprendido

  • Suites de tests para proyectos existentes que hoy se prueban a mano.
  • Testing automatizado de APIs y microservicios antes de cada despliegue.
  • Refactorizaciones seguras de código heredado apoyadas en tests.
  • Pipelines de CI que bloquean cambios que rompen el comportamiento.
  • Tests de regresión para bugs que no deben volver a aparecer.
  • Estandarización de la práctica de testing en el equipo de desarrollo.
DatIACode

Por qué elegir DatIACode

No vendemos formación: diseñamos programas que se traducen en capacidad operativa real.

Experiencia aplicada

Más de 20 años combinando consultoría, desarrollo y formación tecnológica para empresas de distintos sectores.

Visión de negocio

Cada programa parte de los objetivos del cliente. La técnica está al servicio del problema, no al revés.

Adaptación al equipo

Ajustamos profundidad, ritmo y casos de uso al nivel real del equipo tras un breve diagnóstico inicial.

Formación + consultoría

Si la formación destapa un proyecto, podemos acompañarte en su implantación. No abandonamos el resultado.

Especialización en IA

Trabajamos en IA aplicada todos los días. La formación no la imparte alguien que solo enseña, la imparte alguien que también construye.

Orientación a resultados

Entregables tangibles y métricas pactadas. Sin promesas vacías.

Preguntas frecuentes

FAQ

  • No. El bloque de testing de APIs incluye el contexto mínimo de FastAPI necesario para seguir los ejercicios, y las técnicas —TestClient, sobrescritura de dependencias, base de datos de test— se explican desde cero. Si ya trabajas con FastAPI, ese bloque te resultará directamente aplicable a tu proyecto.

Solicitar información

Cuéntanos qué necesitas

Te respondemos en menos de 24h laborables con disponibilidad, opciones de modalidad y propuesta a medida si aplica.

  • Diagnóstico inicial sin compromiso.
  • Propuesta adaptada al nivel y al sector.
  • Asesoramiento sobre formación bonificada.
Modalidad de interés*
Número aproximado de alumnos*

Información básica de protección de datos. Responsable: Datiacode Tech S.L.. Finalidad: atender tu solicitud y, si lo aceptas, enviarte comunicaciones comerciales. Legitimación: consentimiento del interesado y/o medidas precontractuales. Destinatarios: encargados de tratamiento descritos en la política. Derechos: acceso, rectificación, supresión, oposición, limitación y portabilidad escribiendo a privacidad@datiacode.com. Más información en la Política de Privacidad.

  • Ver curso
    Programación20 horas

    Python avanzado: POO y buenas prácticas

  • Ver curso
    Programación25 horas

    Creación de APIs con Python

  • Ver curso
    Programación16 horas

    Testing, cobertura y calidad de software

Ver todos los cursos