what is monkey testing software testing
¿Qué es Monkey Testing en las pruebas de software?
Introducción :
Monkey testing es una técnica de prueba de software en la que el usuario prueba la aplicación proporcionando entradas aleatorias y verificando el comportamiento (o intenta bloquear la aplicación). En su mayoría, esta técnica se realiza automáticamente donde el usuario ingresa cualquier entrada inválida aleatoria y verifica el comportamiento.
Como se dijo anteriormente, no hay reglas; esta técnica no sigue ningún caso de prueba o estrategia predefinidos y, por lo tanto, funciona en el estado de ánimo y el instinto del evaluador.
Muchas veces, esta técnica es automatizada o, más bien, debería decir que puede escribir programas / scripts que pueden generar entradas aleatorias y alimentar la aplicación bajo prueba y analizar el comportamiento. Esta técnica funciona muy bien al hacer pruebas de carga / estrés cuando intenta romper su aplicación probando entradas aleatorias sin parar.
tipos de casos de prueba en pruebas de software
Antes de hablar sobre 'Monkey', permítanme presentarles 'Horse'.
Ves una brida en caballo, ¿verdad? Sirve para dirigir y controlar al caballo para que no pierda la concentración y se concentre solo en correr recto por la carretera.
De manera similar, ya sea manual o Automatización, somos como un caballo en las pruebas porque somos dirigidos e impulsados por los casos / planes y estrategias de prueba, y controlados por las métricas de calidad. Debido a que tenemos un freno a nuestro alrededor, no queremos desviar nuestro enfoque y concentrarnos estrictamente en el conjunto de casos de prueba y ejecutarlos obedientemente.
Está perfectamente bien ser un caballo, pero a veces ¿no te gusta ser un mono?
La prueba del mono tiene que ver con “haz lo que quieras; automáticamente'.
Esta técnica de prueba es un poco caótica porque no sigue ningún patrón específico. Pero la pregunta aquí es
¿POR QUÉ?
Siempre que esté exponiendo una gran aplicación web al mundo, ¿podría imaginarse el tipo de usuarios que atiende su aplicación? Definitivamente hay algunos buenos usuarios, pero no puede estar muy seguro de que no haya ningún usuario desagradable. Hay 'n' números de usuarios desagradables, que también son como monos y les encanta jugar con la aplicación y proporcionar entradas extrañas o grandes o romper las aplicaciones.
preguntas y respuestas de la entrevista bootstrap para experimentados
Por lo tanto, para probar en esas líneas, nosotros los probadores también tenemos que convertirnos en Monkey, pensar y eventualmente probarlo para que su aplicación esté a salvo de los monos desagradables externos.
Tipos de monos
Hay 2: inteligente y volcado
Monos inteligentes - Un mono inteligente se identifica por las siguientes características: -
- Tener una breve idea sobre la aplicación.
- Saben a dónde se redireccionarán las páginas de la aplicación.
- Saben que las entradas que proporcionan son válidas o no válidas.
- Trabajan o se enfocan para romper la aplicación.
- En caso de que encuentren un error, son lo suficientemente inteligentes como para presentar un error.
- Conocen los menús y los botones.
- Es bueno hacer pruebas de estrés y carga.
Mono tonto - Un mono tonto se identifica por las siguientes características:
- No tienen idea de la aplicación.
- No saben que las entradas que proporcionan son válidas o no válidas.
- Ellos prueban la aplicación de forma aleatoria y no conocen ningún punto de inicio de la aplicación o el flujo de un extremo a otro.
- Aunque no conocen la aplicación, también pueden identificar errores como fallas ambientales o fallas de hardware.
- No tienen mucha idea sobre la interfaz de usuario y la funcionalidad.
El resultado:
Los errores informados como resultado de las pruebas de Monkey requieren un análisis detallado. Porque los pasos de reproduciendo el error no se conocen (la mayoría de las veces), volver a crear el error se vuelve difícil.
Creo que sería bueno si esta técnica se realiza en la última fase de prueba cuando se prueben todas las funcionalidades y haya cierto nivel de confianza en la efectividad de la aplicación. Hacerlo al comienzo de la fase de prueba sería un riesgo mayor. Si estamos usando un programa o script que genera entradas aleatorias válidas e inválidas, el análisis se vuelve un poco más fácil.
Ventajas de las pruebas de monos:
- Puede identificar algunos errores listos para usar.
- Fácil de configurar y ejecutar
- Puede hacerse con recursos 'no tan calificados'.
- Una buena técnica para probar la confiabilidad del software.
- Puede identificar errores que pueden tener un mayor impacto.
- No es costoso
Desventajas de la prueba del mono:
- Esto puede durar días hasta que no se descubre un error.
- La cantidad de errores es menor
- Reproducir los errores (si ocurre) se convierte en un desafío.
- Aparte de algunos errores, puede haber algún resultado 'No esperado' de un escenario de prueba, cuyo análisis se vuelve difícil y requiere mucho tiempo.
Conclusión
Aunque decimos que las pruebas de 'Monos de prueba' o Monkey son caóticas, se recomienda planificarlas y asignar algo de tiempo en la fase posterior.
Aunque en las fases iniciales de esta técnica, es posible que no encontremos algunos errores buenos, eventualmente puede descubrir algunos errores realmente buenos como pérdidas de memoria o fallas de hardware. En nuestro curso regular de pruebas, normalmente ignoramos muchos casos pensando que 'este escenario' nunca sucederá; sin embargo, si sucede, puede tener un impacto grave (ejemplo: error de baja prioridad y alta gravedad).
Hacer pruebas con monos realmente puede desenterrar estos escenarios. De cualquier manera que nos encontremos con una situación así, recomendaría encontrar algo de tiempo para analizarla y tratar de encontrar una solución.
En mi opinión, la mejor manera es tener juntos al 'Caballo' y al 'Mono'.
A través de “Horse” podemos seguir un método de prueba bien planificado, bien definido y sofisticado, y a través de Monkey, podemos encubrir algunas situaciones realmente desagradables; y juntos pueden contribuir a lograr una mayor calidad y confianza en el software.
Lectura recomendada
- Mejores herramientas de prueba de software 2021 (Herramientas de automatización de pruebas de control de calidad)
- Trabajo de asistente de control de calidad de pruebas de software
- Curso de pruebas de software: ¿A qué instituto de pruebas de software debo unirme?
- Elegir las pruebas de software como carrera
- Trabajo autónomo de redactor de contenido técnico de pruebas de software
- Algunas preguntas interesantes de la entrevista sobre pruebas de software
- Comentarios y revisiones del curso de pruebas de software
- Programa de Afiliados de Ayuda para Pruebas de Software!