Envíanos tu consulta
Términos y condiciones *
*Si no puedes asistir en directo de facilitaremos un enlace para verlo en diferido
logoImagina
iconoCurso

Curso completo de Testing unitario y de integración en Python

DISPONIBLE EN MODALIDAD:
Aprende a realizar pruebas unitarias y de integración en proyectos Python y así crear soluciones robustas y mantenibles con más de 80% de coverage
iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient
Formación en Testing unitario y de integración en Python bonificable para empresas

¿A quién va dirigido?

Desarrolladores, con experiencia en Python (3 o superior), que quieran realizar pruebas unitarias y de integración en proyectos Python y así crear soluciones robustas y mantenibles

Objetivos

  • Aprender los fundamentos del testing unitario y de integración para desarrollar pruebas con Python
  • Aprender a instalar y configurar Pytest y Unittest en tus proyectos Python
  • Aprender redactar pruebas unitarias y de integración, además de ejecutarlas para realizar análisis de aceptación
  • Aprender a garantizar un mínimo del 80% de coverage en tus proyectos Python

¿Qué vas a aprender?

Aprende a realizar pruebas unitarias y de integración en proyectos Python y así crear soluciones robustas y mantenibles con más de 80% de coverage

Requisitos

  • Experiencia previa desarrollando con Python (v3 o superior)
  • Son necesarios permisos de instalación en el equipo en el que se realice la formación
  • Tener Python (3 o superior), Visual Studio Code o Pycharm instalados en el equipo previamente
  • Tener Git y Docker Desktop instalados previamente
  • Se recomienda tener experiencia dockerizando aplicaciones Python

Temario del curso

tema 1

Introducción al Testing de Software

  • Importancia del testing en el desarrollo de software
  • Tipos de pruebas y sus objetivos
  • Beneficios del testing unitario y de integración
  • Papel del testing en el ciclo de vida del desarrollo de software
tema 2

Configuración del entorno de pruebas

  • Creación de un proyecto Python para pruebas unitarias y de integración
  • Configuración de herramientas de testing en el entorno de desarrollo
  • Manejo de paquetes de Python (pip) para obtener bibliotecas de testing
  • Integración de frameworks de testing en el proyecto
tema 3

Testing Unitario con Pytest

  • Introducción a Pytest como framework de pruebas unitarias en Python
  • Estructura de una prueba unitaria con Pytest
  • Assertions y aserciones en pruebas unitarias con Pytest
  • Uso de decoradores y anotaciones en pruebas unitarias con Pytest
  • Ejecución y análisis de resultados de pruebas unitarias con Pytest
tema 4

Testing de Integración con Pytest

  • Diferencias entre pruebas unitarias y de integración
  • Creación de pruebas de integración en Python con Pytest
  • Uso de mocks y stubs para simular dependencias en pruebas de integración
  • Configuración de datos de prueba para pruebas de integración con Pytest
  • Ejecución y análisis de resultados de pruebas de integración con Pytest
tema 5

Testing de Aceptación con Behave

  • Introducción a Behave como framework de pruebas de aceptación (BDD) en Python
  • Redacción de features y escenarios en lenguaje Gherkin con Behave
  • Configuración de Behave en proyectos Python
  • Implementación de step definitions para ejecución de pruebas con Behave
  • Automatización de la ejecución de archivos feature en proyectos Python
tema 6

Buenas prácticas en el Testing de Software

  • Diseño de pruebas independientes y aisladas
  • Mantenimiento y actualización de pruebas
  • Uso de nombres descriptivos y legibles en las pruebas
  • Organización y estructura de pruebas en proyectos grandes
  • Estrategias de reutilización de código en pruebas
tema 7

Análisis de Informes de Ejecución de Pruebas

  • Generación de informes de resultados de pruebas en Python
  • Interpretación y análisis de los informes de ejecución
  • Identificación y solución de errores encontrados en las pruebas
  • Seguimiento y trazabilidad de problemas en el ciclo de vida del desarrollo
tema 8

Ejecución de Pruebas en Paralelo

  • Beneficios y consideraciones de ejecutar pruebas en paralelo
  • Configuración de entornos de ejecución paralela en Python
  • Uso de herramientas y frameworks para la ejecución paralela de pruebas en Python
  • Distribución de pruebas en diferentes recursos de hardware
  • Manejo de problemas comunes en ejecuciones paralelas
tema 9

Automatización de Pruebas

  • Automatización de pruebas unitarias y de integración en Python
  • Uso de herramientas y scripts para la ejecución automatizada en Python
  • Integración de pruebas automatizadas en procesos de integración continua en Python
  • Desarrollo de flujos de trabajo de automatización de pruebas en Python
tema 10

Herramientas de Calidad y Auditoría de Código en Python

  • Uso de herramientas estáticas para la auditoría de código en Python
  • Análisis de métricas y estándares de calidad del código en Python
  • Mejores prácticas para mejorar la calidad del código en pruebas en Python
  • Uso de herramientas de análisis de cobertura de código en Python
tema 11

Técnicas para Garantizar un Coverage Alto en Python

  • Importancia del coverage en pruebas de software en Python
  • Estrategias para aumentar el coverage en pruebas unitarias en Python
  • Uso de técnicas como branch coverage y statement coverage en Python
  • Identificación de áreas críticas de código para pruebas exhaustivas en Python
  • Medición y seguimiento del coverage en el proyecto de pruebas en Python
tema 12

Integración de Tests con Herramientas de Build en Python

  • Configuración de sistemas de construcción (build systems) para ejecución de pruebas en Python
  • Uso de herramientas como setuptools, pytest, o Jenkins en la integración de tests en Python
  • Automatización de la ejecución de pruebas en el proceso de compilación en Python
  • Integración de resultados de pruebas en informes de construcción en Python
tema 13

Pruebas de Regresión en Python

  • Concepto y objetivos de las pruebas de regresión en Python
  • Identificación de casos de prueba para pruebas de regresión en Python
  • Automatización de pruebas de regresión en proyectos Python
  • Estrategias para ejecutar pruebas de regresión de manera eficiente en Python
tema 14

Integración de Tests con Pytest BDD

  • Introducción a Pytest BDD y BDD (Behavior Driven Development) en Python
  • Redacción de features y escenarios en lenguaje Gherkin en Python con Pytest BDD
  • Configuración de Pytest BDD en proyectos Python
  • Implementación de step definitions para ejecución de pruebas en Python con Pytest BDD
  • Automatización de la ejecución de archivos feature en proyectos Python
tema 15

Pruebas de Performance y Carga en Python

  • Importancia de las pruebas de rendimiento y carga en proyectos Python
  • Uso de herramientas para medir el rendimiento en pruebas en Python
  • Configuración de escenarios de carga y estrés en proyectos Python
  • Análisis de resultados y optimización de rendimiento en pruebas en Python
tema 16

Proyecto Final: Desarrollo de un Sistema de Pruebas Completo en Python

  • Definición y alcance del proyecto final en Python
  • Diseño y planificación del sistema de pruebas en Python
  • Implementación de pruebas unitarias y de integración en un proyecto Python
  • Integración de pruebas automatizadas en un proceso de CI/CD en Python
  • Análisis de resultados y generación de informes de pruebas en Python

Curso de Testing unitario y de integración en Python bonificado 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