Smoke testing vs sanity testing: diferencias con ejemplos reales
El smoke testing pregunta “¿merece la pena probar esta compilación?”. El sanity testing pregunta “¿tiene sentido esta corrección?”. Aprende la diferencia con ejemplos y consejos de automatización.
- Smoke testing comprueba que una nueva compilación es lo bastante estable para pruebas más profundas (amplio y superficial).
- Sanity testing comprueba que una corrección o cambio concreto funciona (acotado y profundo).
- El smoke se ejecuta primero en cada compilación; el sanity, tras un cambio pequeño.
- Ambos son rápidos y buenos candidatos para la automatización.
Acabas de recibir una nueva compilación y el equipo pregunta si está lista para probarse. ¿Ejecutas toda la suite de regresión o haces antes una comprobación rápida? Aquí aparece la duda de smoke testing vs sanity testing.
Los dos términos se confunden a menudo, incluso en entrevistas, así que esta guía de smoke testing vs sanity testing lo mantiene sencillo. Ambos actúan como filtros rápidos, pero responden a preguntas distintas en momentos distintos.
¿Qué es el smoke testing?
El smoke testing es un conjunto corto de pruebas que confirma que las funciones más críticas de una compilación funcionan. El nombre viene del hardware: enciendes el dispositivo y miras si sale humo. Si la aplicación no arranca o los usuarios no pueden iniciar sesión, no tiene sentido ejecutar cientos de pruebas detalladas. También se llama pruebas de verificación de compilación. El glosario de ISTQB recoge las definiciones estándar.
Un ejemplo real de smoke test
En una tienda online, una suite de smoke podría abrir la página de inicio, iniciar sesión, buscar un producto, añadirlo al carrito y llegar a la página de pago. No prueba todos los métodos de pago ni las reglas de cupones; solo demuestra que el camino principal está vivo.
- La aplicación arranca y la página de inicio carga
- El inicio y el cierre de sesión funcionan
- La búsqueda o navegación principal funciona
- Se completa una transacción clave
- No aparecen errores críticos en los registros
¿Qué es el sanity testing?
El sanity testing es una comprobación enfocada tras un cambio menor, como la corrección de un error. Confirma que el cambio funciona como se esperaba y que la funcionalidad muy relacionada sigue comportándose con sentido. Normalmente se ejecuta sobre una compilación que ya pasó el smoke testing.
Un ejemplo real de sanity test
Los desarrolladores corrigen un error por el que el campo del código de descuento rechazaba códigos válidos. Una prueba de sanity aplica varios códigos válidos e inválidos, confirma que los totales se actualizan bien y comprueba que los totales del carrito y del pago siguen coincidiendo. No volverías a probar el inicio de sesión ni la búsqueda.
Smoke testing vs sanity testing: tabla comparativa
| Aspecto | Smoke testing | Sanity testing |
|---|---|---|
| Objetivo | ¿Es la compilación lo bastante estable para probarla? | ¿Funciona esta corrección o cambio? |
| Alcance | Amplio, funciones principales | Acotado, un área |
| Profundidad | Superficial | Profundo en esa área |
| Cuándo se ejecuta | En cada nueva compilación | Tras un cambio menor o corrección |
| Quién lo hace | Desarrolladores o QA, a menudo automatizado | Sobre todo QA, a menudo manual |
| ¿Con guion? | Normalmente sí | A menudo sin guion |
| Si falla | Se rechaza la compilación | Se devuelve el cambio |
Esta tabla de smoke testing vs sanity testing es la forma más rápida de recordar qué prueba ejecutar y cuándo.
Dónde encajan en el proceso de pruebas
Un flujo habitual es: nueva compilación, smoke test, pruebas funcionales, sanity test en las correcciones y pruebas de regresión antes del lanzamiento. En cualquier flujo de smoke testing vs sanity testing, el smoke protege tu tiempo y la regresión protege tu producto. Para ver el panorama completo, consulta nuestra guía de buenas prácticas de pruebas end-to-end.
Las pruebas de regresión vuelven a ejecutar un amplio conjunto de pruebas existentes para asegurar que nada más se ha roto. Piensa en el smoke como la revisión de la puerta, el sanity como la revisión puntual y la regresión como la inspección completa.
Cómo automatizar los smoke tests
La mayoría de los frameworks permiten etiquetar pruebas. Con Playwright puedes marcar las pruebas críticas con una etiqueta y ejecutar solo esas; consulta la documentación sobre anotaciones y etiquetas de pruebas.
import { test, expect } from '@playwright/test';
test('la página de inicio carga @smoke', async ({ page }) => {
await page.goto('/');
await expect(page).toHaveTitle(/Shop/);
});
test('el usuario puede iniciar sesión @smoke', async ({ page }) => {
await page.goto('/login');
await page.getByLabel('Email').fill('user@example.com');
await page.getByLabel('Password').fill('Secret123');
await page.getByRole('button', { name: 'Log in' }).click();
await expect(page).toHaveURL(/dashboard/);
});
npx playwright test --grep @smoke
Ejecuta la suite de smoke como primer trabajo tras el despliegue en un entorno de pruebas y detén el pipeline si falla. Nuestra guía de GitHub Actions CI/CD te enseña cómo, y la lista de las mejores herramientas de automatización de pruebas de 2026 te ayuda a elegir un framework.
Consejo rápido: unas pocas llamadas a la API (comprobación de salud, inicio de sesión, una lectura, una escritura) forman un smoke test rápido y estable. Consulta nuestra guía de pruebas de API con Postman.
Checklist de smoke y sanity testing
- Mantén la suite de smoke por debajo de 10 minutos, idealmente de 5.
- Cubre solo los caminos críticos para el negocio.
- Haz el resultado binario: pasa significa continuar, falla significa rechazar la compilación.
- Escribe un objetivo de una línea para cada prueba de sanity antes de empezar.
- Registra qué cambió para poder elegir escenarios relacionados.
- Revisa ambas suites cada sprint y elimina las comprobaciones que ya no importen.
Errores comunes que debes evitar
- Dejar crecer la suite de smoke hasta que se convierte en una suite de regresión lenta.
- Saltarse las comprobaciones de sanity porque la corrección “parece pequeña”.
- Usar pruebas inestables en la puerta de control, lo que enseña al equipo a ignorar los fallos.
- Confundir smoke testing vs sanity testing en los informes, lo que causa confusión en las reuniones diarias y en las entrevistas.
Reflexiones finales
El smoke testing pregunta “¿merece la pena probar esta compilación?” y el sanity testing pregunta “¿tiene sentido este cambio?”. Entender smoke testing vs sanity testing mantiene enfocado el tiempo de regresión y hace los lanzamientos más seguros. Etiqueta entre cinco y diez pruebas críticas como smoke, ejecútalas en cada compilación y aplica una breve checklist de sanity cada vez que llegue una corrección.
Preguntas frecuentes
¿Cuál es la diferencia principal entre smoke y sanity testing?
El smoke testing es una comprobación amplia y superficial de las funciones críticas de una nueva compilación. El sanity testing es una comprobación acotada y más profunda de una corrección o cambio concreto.
¿Qué va primero, el smoke o el sanity testing?
Normalmente el smoke testing va primero en una compilación nueva. El sanity testing sigue cuando se añade un cambio pequeño o una corrección a una compilación que ya pasó el smoke testing.
¿Se puede automatizar el smoke testing?
Sí. Los smoke tests son estables, repetibles y rápidos, lo que los hace ideales para la automatización y las puertas de control de los pipelines de CI.
¿Es el sanity testing un subconjunto de las pruebas de regresión?
Muchos equipos lo tratan como un subconjunto rápido de las pruebas de regresión centrado en el área modificada, aunque suele ser menos formal y a menudo sin guion.
¿Cuánto debería durar un smoke test?
Apunta a unos pocos minutos como máximo. Si tarda mucho más, mueve las comprobaciones no críticas a tu suite de regresión.
Sigue aprendiendo
¿Necesitas ayuda con testing, WordPress o SEO?
Ayudamos a los equipos a lanzar mejor software y a hacer crecer sus sitios. Cuéntanos en qué trabajas y te sugeriremos un siguiente paso claro.
Más guías sobre testing, IA y desarrollo moderno
¿Te gustó este artículo? Elige otro tutorial y sigue aprendiendo.
Claude Haiku 5.5: características, precios y casos de uso para desarrolladores
Claude Haiku 5.5 es el modelo más rápido y económico de Anthropic. Descubre su contexto de 1M de tokens, los precios, los cambios en la API y los mejores casos de uso para desarrolladores y equipos de QA.
Leer artículo →Automatización de pruebasBuenas prácticas de pruebas end-to-end: mejora la fiabilidad en 2026
Las pruebas inestables hacen perder tiempo y ocultan errores reales. Aprende buenas prácticas de pruebas end-to-end para que tus tests sean estables, rápidos y fáciles de mantener, con un ejemplo sencillo de Playwright.
Leer artículo →Automatización de pruebasMejor framework de automatización de pruebas 2026: cómo elegir el adecuado
¿No sabes qué framework de automatización de pruebas elegir? Compara los tipos principales, usa una checklist sencilla y descubre cómo encajan Playwright, Selenium y Cypress en distintos equipos.
Leer artículo →