Este tema puede parecer simple para muchos, pero a pesar de cientos de artículos web: el humo, la cordura, las pruebas y la regresión son los temas más incomprendidos en las pruebas de software. Existe una enorme cantidad de literatura sobre el tema, pero la mayoría de ellos son confusos. El siguiente artículo intenta abordar la confusión. Antes de comprender estas terminologías, antes que nada debe comprender el concepto de Software Build.
Compilación de software
¿Qué crees que se necesita para construir un software? ¡Sí! El código. Pero no es solo un archivo de código único, generalmente hay múltiples archivos de código fuente. Ahora, estos archivos de código fuente deben compilarse y combinarse en un solo archivo ejecutable que luego puede ser implementado por el equipo de lanzamiento. Este proceso de combinar múltiples archivos de código fuente en un solo archivo ejecutable se conoce como ‘Software Build’. Como habrás adivinado, antes de ser entregado al cliente, un software sufre múltiples cambios (correcciones de defectos), es decir, múltiples ‘Builds’.
Prueba de humo (chequeo general de salud)
¿Qué pasa si los desarrolladores son demasiado imprudentes? Hay un defecto en el primer paso: el usuario no puede iniciar sesión. ¡Sí! Usted dirá qué pasa con las pruebas unitarias, pero por lo general los desarrolladores no siguen las reglas cada vez que las pruebas J Smoke son las pruebas preliminares para revelar fallas simples lo suficientemente graves como para rechazar un posible lanzamiento de software. En otros términos, puede llamarlo como ‘Prueba de confianza’ o ‘Prueba de verificación de compilación’. Las pruebas de humo cubren las funcionalidades MÁS CRÍTICAS. El propósito es rechazar una compilación de “defecto crítico” antes de que el equipo de prueba comience pruebas funcionales detalladas. Antes de comenzar el día, una prueba diaria de construcción y humo se encuentra entre las mejores prácticas de la industria.
Nota : El término “prueba de humo” se refiere a encender un dispositivo simplemente para asegurarse de que no comience a fumar (lo que indica un problema importante). Se originó en las pruebas de hardware electrónico.
Pruebas de cordura (chequeo de salud especializado)
En primer lugar, independientemente de las pruebas, la comprobación de cordura es un concepto básico: una comprobación simple para ver si la salida producida es racional (que el creador del producto estaba pensando racionalmente, aplicando cordura). Extendiendo el concepto al software, después de cada cambio en una compilación, se realizan pruebas de cordura para determinar que los cambios particulares funcionan como se espera después de las pruebas detalladas que se realizan. Si la prueba de cordura falla, la construcción se rechaza para ahorrar el tiempo y los costos involucrados en una prueba más rigurosa.
Nota : La cordura en general se refiere a la solidez, racionalidad y salubridad de la mente humana. Una persona ya no se considera cuerda solo si es irracional.
Retesting (chequeo de recuperación de salud, post medicina)
Este es el más simple de entender. ¿Qué haces en las pruebas? Obviamente encontrar y registrar defectos. ¿Después de esto? ¡Sí! El desarrollador arreglará el defecto. Como equipo de prueba, debe verificar que la corrección del defecto funcione bien, en otras palabras, debe ‘volver a probar’ el defecto en función de sus pasos para reproducirse. Simple, ¿verdad?
Pruebas de regresión (sin efectos secundarios)
El trabajo aún no ha terminado J el código se desarrolla >> Se desarrolla la compilación >> Se realiza la cordura >> Se realiza la prueba completa >> Los defectos se registran, corrigen y vuelven a probar. ¿Qué más? ¡Sí! La verdad es más extraña que la ficción, y también lo es el Software. Nunca se sabe que un cambio en una función (corrección de defectos o mejora o solicitud de cambio) puede afectar múltiples áreas del software. Es nuestro deber como equipo de prueba asegurarnos de que todo (aparte del cambio) afectado funcione como se espera. En otras palabras, para garantizar que no se introduzcan nuevos defectos. Como habrás adivinado, ¡conocer el impacto (análisis de impacto) es imprescindible para realizar pruebas de regresión efectivas!
Punteros clave
Hay un problema inherente en la comunidad de pruebas. No solo llamamos al mismo proceso por varios nombres, sino que a veces algunos de nosotros también usamos el mismo nombre para llamar a diferentes procesos. Esta es la razón de gran parte de la confusión. ¡Pero debes despejar todas tus dudas antes de ser un gran probador!
· Es posible que no haya observado, pero la secuencia de estas pruebas es la misma que se ordenó en este artículo 😉 Por lo general, las pruebas de regresión son el último ciclo de prueba antes de cerrar la sesión del software.
· Ambas pruebas de humo y cordura se realizan para verificar funcionalidades críticas y evitar cualquier esfuerzo inútil (prueba funcional) en caso de problemas críticos.
· Las pruebas de regresión es donde el ‘análisis de impacto’ es útil para medir las áreas afectadas debido a cualquier cambio de software.
· Las pruebas de cordura y regresión se pueden realizar de forma manual o mediante automatización. Las pruebas de regresión son las más adecuadas para las pruebas de automatización que utilizan herramientas efectivas como Selenium, HPE UFT, etc.
Diferentes organizaciones y personas tienen una comprensión diferente de las pruebas de humo y cordura, por lo tanto, a menudo se usan indistintamente. Las pruebas de regresión se descuidan en su mayoría o el equipo depende completamente de la automatización, pero si se realiza con diligencia utilizando el análisis de impacto, es uno de los ciclos de prueba más importantes.
Espero que este artículo te haya ayudado a comprender claramente estos conceptos. En caso afirmativo, considere suscribirse a Software Testing Studio para obtener todas las actualizaciones nuevas en su Bandeja de entrada GRATIS. ¡Gracias!