smoke-testing - tipos - tecnicas de pruebas de software
¿Qué es una prueba de humo y qué hará para mí? (8)
* la verificación de la característica básica y crítica de una aplicación antes de proceder a la prueba se conoce como prueba de humo. * En las pruebas de humo, verificamos el flujo positivo de la característica básica y crítica para verificar si la construcción es verificable o no.
Pensé que entendía que se usaba un servidor de humo para la integración continua para medir el rendimiento y probar la cobertura de un proyecto. ¿Es esto básicamente correcto? ¿Qué significa fumar-probar un programa? ¿Significa simplemente aplicar continuamente las pruebas definidas en el servidor de humo para poder identificar la degradación del rendimiento en un marco de tiempo particular?
El término se origina en la reparación de hardware y se ha aplicado al software. Pretende ser una prueba rápida para ver si la aplicación se "incendia" cuando se ejecuta por primera vez. Como se indicó anteriormente, es solo para asegurarse de no perder el tiempo de un grupo de personas liberándolos de algo que obviamente está roto.
Enciéndelo, mira si sale humo.
La página de wikipedia sobre pruebas de humo es bastante buena. Incluye un puntero al documento de Steve McConnel ("Code Complete") en la sección de mejores prácticas del IEEE Software 13 (4), 1996, titulado "Daily Build and Smoke Test" .
Yo diría que la prueba de humo es una condición previa a la unidad y otras formas de prueba: si la prueba de humo falla, no tiene sentido iniciar una prueba de unidad.
La prueba de humo es el primer paso de la prueba de integración. Como desarrollador, ha reunido todas las partes y se asegura de que su aplicación se ejecute antes de entregarla a su equipo de control de calidad para realizar pruebas "reales".
Quería escribir más, pero MahdeTo me dio una respuesta correcta ... :)
Las pruebas de humo no son pruebas de rendimiento o pruebas de prevención de regresión.
Las pruebas de humo son un conjunto de sus pruebas totalmente automatizadas de máxima prioridad. Incluso si su compilación regular tiene éxito, es posible que su producto se rompa de formas muy fundamentales que lo hagan 100% inutilizable. Las pruebas de humo están diseñadas para probar ese nivel de funcionalidad central. Es probable que una compilación que no pase las pruebas de humo falle la mayoría de todas sus pruebas automatizadas.
Si una prueba de humo falla, generalmente significa que está perdiendo productividad porque la construcción no se puede usar, no se puede probar, etc. Las fallas de la prueba de humo tienden a requerir soluciones inmediatas, en el orden de las horas y no de los días.
El aspecto importante de las pruebas de humo es que se pueden ejecutar rápidamente. SIEMPRE debería estar realizando pruebas de humo de algún tipo. Muchos grupos tienen recursos suficientes para ejecutar un conjunto más amplio de pruebas en sus compilaciones de integración diarias o continuas (que es bondad), pero las pruebas de humo deben considerarse el mínimo.
Las pruebas de humo son un conjunto de pruebas básicas baratas para ejecutar que preceden a las pruebas reales. Su objetivo es verificar que la compilación se haya implementado correctamente y que todos los env de prueba. Los aspectos están en ejecución y listos para el proceso de prueba real. Le ahorra llevar toda la extensión de su prueba de ira a una construcción defectuosa y solo darse cuenta de que ha estado probando en un mal env. o erróneamente implementado construir posiblemente demasiado tarde.
Usamos el término prueba de humo para referirnos a una prueba que realiza pruebas básicas rápidas a una aplicación o producto para que sea elegible para pruebas adicionales como pruebas de integración o pruebas de funcionalidad. Es de poca utilidad realizar pruebas de integración u otras pruebas avanzadas si la aplicación no cumple con algunas de las tareas básicas necesarias para estas pruebas avanzadas. Por ejemplo, tenemos una aplicación basada en web y realizamos pruebas de humo para asegurarnos de que podemos cargar todas las páginas web, permitir a los usuarios iniciar sesión / cerrar sesión, etc. Estas son las cosas básicas que deberían funcionar con la aplicación para que pueda probarse. Si las páginas ni siquiera se cargan o si los usuarios ni siquiera pudieron iniciar sesión, no podemos hacer mucho con la funcionalidad o las pruebas de integración. Hacemos pruebas de humo con cada compilación seguida de funcionalidad y pruebas de integración.