Las pruebas unitarias son un método de programación que se utiliza para comprobar si un módulo individual de código fuente se ajusta a su diseño y se comporta como se esperaba.
La biblioteca `unittest` de Python proporciona un rico conjunto de herramientas para la construcción y ejecución de pruebas.
Este es un ejemplo básico de cómo realizar pruebas unitarias en Python:
```python
import unittest
def suma(x, y): return x + y
class TestSuma(unittest.TestCase):
def test_suma(self): # La función de prueba debe comenzar con la palabra ‘test‘ self.assertEqual(suma(5, 7), 12) def test_suma_incorrecta(self): self.assertEqual(suma(5, 5), 11)if name == ‘main’:
unittest.main()
```
En el código anterior:
1. Importamos la biblioteca `unittest`.
2. Definimos la función que queremos probar, en este caso, `suma()`.
3. Creamos una clase llamada `TestSuma` que hereda de `unittest.TestCase` que incluye varias clases de aserción como `assertEquals()`, `assertTrue()`, etc.
4. Dentro de esta clase, definimos las funciones de prueba. Cada función de prueba debe comenzar con la palabra ‘test’. En la función de prueba, llamamos a nuestra función `suma()` y comprobamos si la salida es la que esperamos utilizando las aserciones.
5. Al final, agregamos un bloque `if name == ‘main’:` para ejecutar nuestras pruebas cuando ejecutamos el script.
Se puede ejecutar este script de prueba de manera normal como cualquier otro script de Python y da un resultado de la prueba.
Además de `unittest`, otros marcos de pruebas populares son `pytest` y `nose`.
Es importante mencionar, las pruebas unitarias son fundamentales en el desarrollo de software, ya que ayuda a descubrir errores en las fases tempranas del ciclo de vida del desarrollo.