No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripción 🔥

Aprende todo un fin de semana sin pagar una suscripción 🔥

Regístrate

Comienza en:

5D
12H
44M
47S

Testing de software y de datos

15/24
Recursos

Aportes 8

Preguntas 2

Ordenar por:

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

o inicia sesión.

Hay varias librerías de Python para pruebas automatizadas, algunas de las más populares son:

  1. unittest: Es una librería estándar de Python para pruebas unitarias. Proporciona una estructura común para escribir pruebas y comparar resultados esperados con resultados actuales.

  2. pytest: Es una librería popular para pruebas automatizadas que se centra en hacer las pruebas fáciles de leer y escribir. Incluye características como la detección automática de pruebas y la capacidad de ejecutar varias pruebas al mismo tiempo.

  3. nose: Es una librería de pruebas automatizadas que se enfoca en encontrar y ejecutar automáticamente todas las pruebas en un paquete de Python.

  4. doctest: Es una librería de Python que permite incluir pruebas en comentarios en el código fuente. Las pruebas se ejecutan automáticamente cuando se importa el módulo.

  5. behave: Es una librería de pruebas automatizadas BDD (Test driven development) para Python. Esta librería utiliza Gherkin lenguaje para escribir pruebas.

**Testing unitario: **Sirve para hacer los test de cada una de las funciones por separado
Test de integracion:Es para comprobar que las funciones funcionan correctamente en conjunto
**Test end 2 end: **Es para comprovar que la funcion funciona en produccion

Comparto un blog donde encontré algo de evaluación de Data Quality con Python y al final utiliza un scrip de Python para automatizar controles de datos.
https://servian.dev/data-quality-and-testing-frameworks-316c09436ab2
No es la consigna en sí, pero me gusto mucho porque va de algo simple a algo avanzado.

Mi resumen de la clase:

La colaboración es muy importante, el testing es muy necesario para cada vez que realicemos algo, estemos considerando lo importante. Para estos hacemos funciones que revisan lo que hacemos y que al meter cierto valor, sale lo que esperamos. Las pruebas unitarias serán de gran ayuda para esto.

El testing de software: va de pruebas unitarias, de integración y las pruebas E2E con características visibles para probar que lo que hacemos tenga calidad.

Buena explicacion.

Algunas herramientas para testing en Python

  • Unittest: Es una librería que ya viene incluida con el lenguaje, es muy sencilla de usar y tiene compatibilidad con el resto librerías, pero carece de funcionalidades y un sistema de plugins.
  • Pytest: Es una herramienta muy potente debido a la gran cantidad de plugins y comunidad que tiene, además iniciar con ella no es tan difícil, pero tiene la desventaja de que es difícil profundizar en la herramienta y algunos plugins pueden estar desactualizados.
  • Hypothesis: Es una librería que se caracteriza por la filosofía “property based testing”, que se basa en generar escenarios pseudo-aleatorios para ejecutar nuestros test, esto permite aumentar la confiabilidad de los tests, las desventajas son que el hacer pruebas más complejas toma bastante tiempo y la curva de aprendizaje es elevada.

Estas me parecieron interesantes, aunque dentro de este link hay mas herramientas: https://openwebinars.net/blog/herramientas-de-testing-en-python/

unittest: Es una librería estándar de Python que proporciona un marco completo para escribir y ejecutar pruebas unitarias.

pytest: Es una librería de código abierto que ofrece una interfaz fácil de usar y poderosa para escribir y ejecutar pruebas unitarias.

doctest: Es una librería estándar de Python que permite escribir pruebas en forma de documentación y verificar su salida automáticamente.

nose: Es una librería de código abierto que proporciona una manera fácil de encontrar y ejecutar pruebas unitarias.

Estas son solo algunas de las muchas opciones disponibles, la elección de la librería depende de las necesidades y preferencias del desarrollador.

Fuente: ChatGpt