jueves, 10 de julio de 2025

🧪 Python Nivel 2 – Parte 15: Introducción a Testing con unittest

 

🎯 ¿Qué aprenderás?

✅ Qué es el testing y por qué es esencial
✅ Cómo crear tests automatizados con unittest
✅ Qué es un test case y cómo definirlo
✅ Cómo comprobar que el código funciona correctamente
✅ Qué hacer cuando un test falla


🧱 ¿Qué es unittest?

unittest es el módulo estándar de Python para pruebas automatizadas.
Permite crear clases de test que validan que tus funciones y métodos se comporten correctamente.


📦 Estructura básica de un test:


import unittest def suma(a, b): return a + b class TestSuma(unittest.TestCase): def test_suma_positivos(self): self.assertEqual(suma(2, 3), 5) def test_suma_negativos(self): self.assertEqual(suma(-2, -3), -5) if __name__ == '__main__': unittest.main()

✅ ¿Qué hace cada parte?

  • import unittest: importa el framework

  • class TestX(unittest.TestCase): define un grupo de tests

  • self.assertEqual(...): compara resultado esperado con resultado real

  • unittest.main(): ejecuta todos los tests definidos


🧪 Otros métodos de validación


self.assertNotEqual(a, b) self.assertTrue(condición) self.assertFalse(condición) self.assertIn(valor, lista) self.assertRaises(ErrorEsperado, funcion, args)

💡 ¿Cuándo hacer testing?

✔️ Al desarrollar funciones críticas
✔️ Cuando mantienes proyectos grandes
✔️ Al trabajar en equipo
✔️ Para prevenir errores en producción


🧑‍💻 Ejemplo real con clase Usuario


class Usuario: def __init__(self, nombre): self.nombre = nombre def saludo(self): return f"Hola, {self.nombre}" class TestUsuario(unittest.TestCase): def test_saludo(self): u = Usuario("Ana") self.assertEqual(u.saludo(), "Hola, Ana")

🧠 ¿Qué aprendiste hoy?

✔️ A automatizar pruebas con unittest
✔️ A validar comportamientos de funciones y clases
✔️ A escribir código más confiable y profesional
✔️ A detectar errores antes de que lleguen al usuario


📂 Código de ejemplo en GitHub:
github.com/josecodetech

🎥 Video paso a paso en YouTube:
https://youtu.be/-2Dj28lOn8E


No hay comentarios:

Publicar un comentario

Se procedera a revision para su pronta publicacion en caso de que no incumpla las normas de blogger.