Ejecutar pruebas unitarias en Python

Marion Paul Kenneth Mendoza 15 febrero 2024
  1. ¿Qué es la prueba unitaria?
  2. Crear y definir un caso de prueba en Python
  3. Ejecutar una sola prueba usando Python
  4. Ejecutar múltiples pruebas en Python
Ejecutar pruebas unitarias en Python

En el proceso de desarrollo de software conocido como prueba unitaria, se examina la funcionalidad de los componentes más pequeños que se pueden probar de forma independiente de una aplicación, conocidos como unidades. El módulo unittest de Python nos permite ejecutar pruebas unitarias.

Este artículo discutirá las pruebas unitarias y cómo hacerlo en Python.

¿Qué es la prueba unitaria?

Plan, casos y secuencias de comandos, y la prueba unitaria real son las tres etapas de una prueba unitaria.

La primera etapa consiste en escribir y revisar la prueba unitaria. La siguiente etapa es la producción de casos de prueba y guiones.

Crear y definir un caso de prueba en Python

Antes de comenzar, tenga en cuenta que estamos usando Python versión 2.7 y superior en este artículo. Sin embargo, recomendamos usar la última versión de Python 3.x.

Un caso de prueba es una serie de operaciones en un sistema para ver si cumple con los requisitos del software y funciona correctamente. El objetivo de un caso de prueba es determinar si varias características de diseño funcionan según lo previsto y garantizar que el sistema cumpla con todos los estándares, recomendaciones y necesidades del cliente aplicables.

El acto de crear un caso de prueba también puede ayudar a identificar fallas o errores en el sistema. En Python, podemos usar la subfunción TestCase para crear un caso de prueba que probaremos más adelante.

Pero, primero, importe el módulo unittest para que el módulo esté disponible para nuestro código.

Código de ejemplo:

import unittest


def sample_test(sample_list):
    if len(sample_list) > 10:
        raise ValueError("A maximum of 10 objects can be added to the container")
    return {"container_a": sample_list}


class TestAddObjectToContainer(unittest.TestCase):
    def test_add_object_to_container_success(self):
        actual = add_object_to_container(sample_list=["A", "B"])
        expected = {"container_a": ["A", "B"]}
        self.assertEqual(actual, expected)

Ejecutar una sola prueba usando Python

Por ejemplo, para probar nuestro caso de prueba desarrollado, podemos ejecutar el siguiente comando una vez que se haya realizado la configuración necesaria.

Código de ejemplo:

python -m unittest main.py

Cuando ejecutamos este comando, obtenemos el siguiente resultado.

ejecutar prueba - éxito

O algo como esto, si hay un error en nuestra prueba.

ejecutar prueba - fallado

Ejecutar múltiples pruebas en Python

Por ejemplo, si hemos creado varios archivos de Python por prueba y los hemos colocado en un directorio, podemos ejecutarlos junto con el método discover. Para detectar automáticamente los archivos de prueba, debemos nombrarlos comenzando con la palabra clave prueba como nuestro archivo de Python creado previamente main.py.

python -m unittest discover

El comando anterior detectará todos los archivos cuyos nombres comiencen con prueba y los ejecutará.

Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn

Artículo relacionado - Python Unit Test