Junior
¿Cómo escribir una prueba de humo?
sobes.tech AI
Respuesta de la IA
Pruebas de humo. Identificamos las funciones principales y críticas de la aplicación. Creamos un conjunto mínimo de pruebas para verificar la funcionalidad "superficial" de estas funciones. Las automatizamos para una ejecución rápida después de cada compilación o lanzamiento.
Ejemplo de estructura de prueba de humo (pseudocódigo):
# Prueba nº1: Verificación del inicio de sesión exitoso del usuario en el sitio
def test_login_exitoso():
# Navegar a la página de inicio de sesión
navigate_to("https://mysite.com/login")
# Ingresar credenciales correctas
enter_username("user@example.com")
enter_password("password123")
# Hacer clic en el botón "Iniciar sesión"
click_button("Iniciar sesión")
# Verificar la presencia de un elemento o URL que indique inicio de sesión exitoso (por ejemplo, enlace al perfil)
assert element_is_present("//a[@href='/profile']") or url_is("https://mysite.com/dashboard")
# Prueba nº2: Verificación de agregar un artículo al carrito
def test_agregar_articulo_al_carrito():
# Navegar a la página del producto
navigate_to("https://mysite.com/products/item1")
# Hacer clic en el botón "Agregar al carrito"
click_button("Agregar al carrito")
# Verificar que el contador de artículos en el carrito se actualizó
assert get_cart_item_count() == 1
# Y así sucesivamente para otras funciones críticas (registro, pago, búsqueda, etc.)
Puntos clave al escribir pruebas de humo:
- Brevedad y velocidad: Las pruebas deben ejecutarse lo más rápido posible.
- Enfoque en el núcleo: Solo se verifican las funciones "esenciales".
- Estabilidad: Las pruebas deben ser resistentes a cambios menores que no afectan la lógica crítica.
- Automatización: La mayoría de las pruebas de humo están automatizadas para integrarse en pipelines CI/CD.
- Simplicidad: La lógica de las pruebas debe ser comprensible y fácil de mantener.