Envíanos tu consulta
Términos y condiciones *
logoImagina
En este curso te introducirás en el mundo del testing con Python y aprenderás crear pruebas unitarias con unittest y pytest. Este curso te permitirá proyectos robustos, extensible y mantenibles a través de la metodología TDD, además de aprender a automatizar las ejecuciones y usar Pycharm como un profesional del testing.
iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient
Aprende TDD con Python: Curso completo
¿A quién va dirigido?
Este curso está enfocado a todo programador que quiera aprender a aplicar técnicas de testing con TDD sobre sus proyectos Python.
Objetivos
  • Conocer las estrategia de desarrollo TDD para que puedan desarrollar sus propias pruebas de software con Python.
  • Aproximarse al desarrollo de software robusto y de calidad.
  • Automatizar de ejecución de pruebas a través de librerías python y Pycharm.
  • Realizar Katas para asimilar el desarrollo bajo estándares TDD.
  • Aprender recomendaciones y buenas prácticas para alcanzar porcentajes altos de coverage en tus proyectos Python.
¿Qué vas a aprender?

En este curso te introducirás en el mundo del testing con Python y aprenderás crear pruebas unitarias con unittest y pytest. Este curso te permitirá proyectos robustos, extensible y mantenibles a través de la metodología TDD, además de aprender a automatizar las ejecuciones y usar Pycharm como un profesional del testing.

Requisitos
  • Tener experiencia profesional desarrollando aplicaciones con Python 3.
  • Disponer de un equipo con acceso a un usuario con permisos de instalación.
  • Tener JetBrains Pycharm instalado en el equipo para emplearlo como IDE durante el curso.
Temario del curso
tema 1Introducción y puesta en marcha
  • ¿Qué son las pruebas de SW?
  • ¿Qué ventajas aporta realizar pruebas?
  • Pruebas manuales vs Pruebas automatizadas
  • Configuración de Pycharm
  • Creación de un proyecto Python y Pip
  • Breve introducción a "unittest" e instalación
  • Breve introducción a "pytest" e instalación
  • Diferencias destacables entre unittest y pytest
  • Buenas prácticas de organización de pruebas en un proyecto para ambas alternativas
tema 2Fundamentos de testing
  • ¿En qué consiste el testing unitario?
  • ¿Qué es un fixture?
  • ¿Qué es un Test Case?
  • ¿Qué es un Test Suite?
  • ¿Qué es el coverage?
  • ¿A partir de qué porcentaje de coverage podemos garantizar calidad?
  • ¿Qué es un SUT?
  • ¿Qué son los tests de integración y por qué son necesarios?
  • ¿En qué consiste el Stubbing?
  • ¿En qué consiste el Mocking?
  • ¿Existen elementos que no debemos probar de forma automatizada?
tema 3Introducción a TDD
  • Introducción a la metodología de desarrollo TDD
  • Características
  • Las 3 reglas de TDD
  • El ciclo y fases TDD
  • Preguntas frecuentes acerca de TDD
tema 4Introducción a la creación de pruebas unitarias
  • Configuración de parámetros de ejecución
  • Estructura de una prueba unitaria con unittest
  • Estructura de una prueba unitaria con pytest
  • Anotaciones
  • Clases y métodos de las pruebas
  • Expects y Assertions para pruebas de aceptación
  • ¿Cómo plantear una prueba básica?
  • ¿Cómo plantear una prueba intermedia?
  • ¿Cómo plantear una prueba compleja?
  • Implementación de código para pasar las pruebas
  • Obteniendo el coverage de nuestro proyecto
  • Configuraciones previas o posteriores a las pruebas
  • Generación de informes de ejecución
  • Entendiendo la salida de la ejecución
  • Gestión de errores
tema 5Presentación del proyecto y puesta en marcha
  • Creación de pruebas unitarias a partir de requisitos
  • Creación de una suite de pruebas para el proyecto
  • Implementación de código para pasar las pruebas unitarias
tema 6Profundizando en la creación de pruebas
  • Orden de ejecución de pruebas
  • Buenas estrategias de planteamiento de pruebas
  • Anidación de pruebas
  • Pruebas con parámetros
  • Perfeccionamiento de la suite de pruebas del proyecto
  • Verificación de éxito en la implementación del código del proyecto
tema 7Pruebas de integración en el proyecto
  • Definiendo Stubs
  • Uso de Stubs en pruebas
  • Definiendo Mocks
  • Uso de Mocks
  • Ejecuciones individualizadas de pruebas
  • Implementación de código para pasar las pruebas de integración
tema 8Pruebas de eficiencia
  • ¿Por qué debemos realizar pruebas de eficiencia?
  • ¿Cuándo debemos realizar pruebas de eficiencia?
  • Aplicando pruebas de eficiencia al proyecto
  • Implementando el código para pasar las pruebas de eficiencia del proyecto
tema 9Saltarse pruebas
  • ¿Cómo podemos no ejecutar una o varias pruebas?
  • Saltarse pruebas con "unittest"
  • Saltarse pruebas con "pytest"
  • Gestión de fallos esperables
tema 10Uso de línea de comandos
  • Comandos destacables para trabajar con "unittest"
  • Comandos destacables para trabajar con "pytest"
tema 11Comprobaciones previas a subidas a producción del proyecto
  • Comprobando el éxito en todas las pruebas del proyecto
  • Comprobando la obtención de un coverage del proyecto del 100%
  • Verificando que el proyecto se comporta tal y como se ha ideado
  • Verificando limpieza de código y legibilidad de las pruebas definidas
  • ¿Podríamos mejorar algo más?
  • Análisis y Debate:¿Podríamos concluir que el proyecto es robusto, escalable y mantenible?
  • Análisis y Debate: ¿Ha merecido la pena el esfuerzo que le hemos puesto a la creación de pruebas?
tema 12Automatización en Pycharm
  • ¿Cómo podemos ejecutar de manera continua nuestros tests?
  • ¿Cómo podemos generar fácilmente los test cases?
  • Cómo leer los informes de ejecución
tema 13Automatización de pruebas con Gitlab CI/CD
  • ¿Cómo podemos automatizar la ejecución de pruebas python desde Gitlab?
  • Configuración de gitlab-ci.yaml
  • Ejecución de Jobs y Pipelines
  • Obtención de informes

Formación Bonificada para Empresas a través de FUNDAE

Somos entidad organizadora de FUNDAE, todas nuestras formaciones se pueden bonificar hasta el 100%, sujeto a vuestro crédito disponible y a cumplir con todos los requisitos de realización establecidos por la Fundación Estatal para el Empleo.

 

Si desconoces el funcionamiento de las bonificaciones, ofrecemos el servicio de gestión en FUNDAE, consúltanos cualquier duda que te surja.

Descargar Guía FUNDAE
imagenFundae
iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient