¿Cuál es el método de prueba de Monkey para la verificación del software?

Si el nombre Prueba de mono inunda tu cerebro con curiosidad, entonces este artículo te será muy útil para calmarlo todo. Le contaremos todo sobre este proceso, que tiene como objetivo probar varios software para encontrar cualquier posible error que pueda haber en ellos. El principio simple de este proceso es: haz lo que quieras; automáticamente.

Esta prueba es más esporádica e incluye aleatoriedad en la entrada de datos. A veces también se conoce como prueba de Fuzz. El contenido de este artículo exhibirá todas las dinámicas relacionadas con este método de prueba de software. Comencemos.


¿Qué significa la prueba del mono?

Este es un método utilizado para probar software que implica que un probador ingrese entradas aleatorias en el software de la aplicación sin ningún conjunto predefinido de verificaciones del comportamiento del sistema y casos de prueba. Todo este propósito se hace para descubrir cualquier error / error que pueda existir en el software con la ayuda de técnicas exploratorias. Se realiza para verificar el comportamiento del software y, si hay algo, puede provocar un bloqueo y qué.

Algunas de estas dinámicas lo ayudarán a comprender mejor el funcionamiento de este método:

  • El probador o el desarrollador que realiza la operación se conoce como el mono.
  • No hay controles establecidos ni reglas a seguir durante la realización de la programación. Se basa en la elección individual.
  • Esta técnica funciona principalmente en modo automatizado, donde toma entradas aleatorias de cualquier script / programa con el que se alimenta.
  • El método es más adecuado para pruebas de esfuerzo / carga si desea probar romper la aplicación ingresando entradas sin parar o en masa.
  • Cuando el Mono usa la PC, realiza la tarea basada en la comprensión personal.
  • Algunos casos de pruebas de Monkey se aplican también a las pruebas de GUI o pruebas de unidad.
¿Qué significa Monkey testing?

PD: si buscas el el albergue mejor calificado Android aplicación de recuperación de mensajes o la parte superior Android root software, haga clic para probar.


¿Cómo se originaron las pruebas de monos?

El primer uso de la técnica del probador de monos se realizó en Mac en 1983 para verificar MacPaint y MacWrite. El Macintosh inicial vino con una memoria de 128k bytes, que solo podía ahorrar 90k para las otras aplicaciones después de dedicar la memoria requerida a los archivos del sistema. MacPaint y MacWrite usaban buffers fuera de la pantalla para operar, que eran tres veces más grandes que el tamaño de la pantalla.

¿Cómo se originaron las pruebas de Monkey?

Esto generó la necesidad de verificar ejecutar estas dos aplicaciones en menos condiciones de memoria y ver si se bloquean. Sin embargo, no fue fácil volver a generar las mismas condiciones para volver a ejecutar la comprobación de bloqueo.

Ahora, un programa llamado "El mono”Fue utilizado por el equipo de Steve Capps para resolver este problema. Este programa usó datos aleatorios que se ingresaron en él para las aplicaciones MacPaint y MacWrite. Lo bueno de este programa era que podía operarse al mismo tiempo o al lado de otras operaciones en la PC, tomaba datos y realizaba todas las acciones sin perturbar ninguna otra operación en curso.

The Monkey se desempeñó más rápido que cualquier programa regular basado en el usuario. Todo esto se sintió como un mono presionando las teclas al azar y girando el mouse haciendo clic en cualquier lugar de la pantalla.

El propósito principal del programa era generar un porcentaje establecido de eventos de ventana, clics de menú y comandos, etc. entre todas las entradas aleatorias para que las pruebas pudieran enfocarse según el requisito. Como aparato de prueba, el programa resultó muy eficaz. Los dibujos se produjeron de manera asombrosa, pero la escritura era un galimatías.

El programa estaba funcionando bien al bloquear las aplicaciones de destino. Sin embargo, el inconveniente fue que una vez que se solucionó la falla mayor, el programa no pudo encontrar las otras fallas menores o reencontrar las anteriores.

Además, aquí está El mejor en linea Android Emulador, El mejor aplicación de chat anónimo para su referencia y conozca cómo arreglar el Android Aplicación no instalada con facilidad.


¿Cuál es la necesidad de esta prueba?

Cuando lleva el software de la aplicación web al mundo, lo expone a una gran cantidad de usuarios en todas las categorías. Algunos de los usuarios son buenos, pero no puede descartar la posibilidad de los desagradables. Los usuarios desagradables son numerosos, y se comportan como los monos que juegan con el software ingresando entradas voluminosas o aleatorias para bloquear la aplicación.

Este principio también se sigue aquí. Los probadores se comportan como un mono mientras piensan y siguen la regla de aleatoriedad para probar la seguridad de la aplicación de los otros monos desagradables.


¿Cuáles son los beneficios de las pruebas con monos?

Seguir este método brinda a los evaluadores ciertas ventajas sobre el otro, que son:

  • 1. Esta es la mejor técnica a seguir si desea permanecer abierto a la idea de descubrir errores nuevos y únicos. Los evaluadores pueden usar cualquier conjunto de comprobaciones y escenarios experimentados para implementar las pruebas. Esto puede llevarlos a encontrar errores únicos en los que nadie puede pensar y que pueden causar un impacto adverso.
  • 2. Este es un buen método para probar la confiabilidad y credibilidad del software.
  • 3. El método viene con una ejecución fácil ya que los datos aleatorios ayudan mejor a realizar pruebas aleatorias, que son una forma sencilla de verificar cualquier sistema.
  • 4. Por lo general, esta prueba puede llevarse a cabo con la ayuda de los evaluadores menos calificados, pero ese no es siempre el caso.
  • 5. Las pruebas demuestran ser menos costosas con la configuración económica y las demandas de ejecución.
  • 6. Ciertas herramientas ayudan a las pruebas de Monkey a ejecutarse de forma automática, lo que funciona bien.
  • 7. Otra gran cosa es que esta prueba se puede hacer para el escritorio, el móvil y todas las aplicaciones web.
  • 8. Los datos precompilados y aleatorios se pueden ingresar para realizar pruebas para verificar problemas relacionados con OWASP.
  • 9. La prueba de base de datos también es posible con esto haciendo una transacción y registrando datos aleatorios y utilizando acciones aleatorias. Luego, el probador puede retroceder para ver si la base de datos se ha bloqueado o si se ha dañado.

¿Cuáles son los inconvenientes asociados con las pruebas con monos?

Sin embargo, hay ciertas lagunas en el sistema que hacen que retroceda un paso, que son:

  • 1. El principal inconveniente es que cualquier error se produce una vez; no se puede volver a generar ya que los datos aleatorios que se ingresan para la prueba no lo permiten.
  • 2. Debido a la aleatoriedad, no se realizan las operaciones de prueba exactas, lo que reduce la precisión de los resultados de la prueba.
  • 3. Sabemos que las pruebas con monos no requieren necesariamente monos expertos, pero para tener resultados precisos e intransigentes, uno necesita desplegar técnicos más calificados en el dominio.
  • 4. En ausencia de verificaciones estándar anteriores, la prueba lleva más tiempo y consume más tiempo para el usuario. Los resultados tampoco son muy satisfactorios ya que los errores generados son muy menores en comparación con el tiempo empleado.
  • 5. Además de los errores, las pruebas a veces generan resultados inesperados, que son relativamente difíciles de analizar y consumen aún más tiempo.

¿Cuáles son los diferentes tipos de pruebas con monos?

Existen diferentes métodos para implementar esta prueba, que requiere su división en tres categorías diferentes. Son:

Prueba del mono tonto

Comencemos mirando algunas de las características de un probador de monos tontos

  • El probador no sabe nada sobre el concepto de la aplicación o el producto.
  • No saben si las entradas que están ingresando son válidas o no. También son desconocidos para la funcionalidad y la interfaz de usuario.
  • Y también pueden denominarse 'monos ignorantes. "

Esta prueba requiere que el líder de la prueba asigne un probador para probar el producto sin siquiera tener ningún conocimiento al respecto. El evaluador prueba la aplicación de manera intuitiva ingresando una entrada aleatoria según la idoneidad que siente. En cierto modo, el evaluador no es experto en tecnología, sino que simplemente está probando el software de la aplicación.

Los datos que ingresa el probador podrían no ser válidos. El comportamiento de la aplicación se observa si funciona según las expectativas. La ventaja de la prueba del mono tonto es que el uso de probadores ingenuos mantiene la salida inesperada. Los probadores conscientes pueden simplemente poner correctamente los datos válidos, lo que puede fallar al probar otras condiciones que no sean las que conocen.

Prueba de mono inteligente

Un mono inteligente puede caracterizarse como:

  • El probador posee un conocimiento suficientemente bueno o breve sobre el producto o la aplicación del sistema.
  • Conocen la funcionalidad del producto. Saben hacia dónde se redirigirá la página y conocen todos los botones y el menú.
  • E ingresan los datos válidos para realizar la prueba. Son jugadores aptos para realizar pruebas voluminosas o de estrés.
  • Su enfoque principal es trabajar o romper el software de la aplicación.
  • Informan del error si encuentran algún error significativo.

Aquí, el administrador de tareas pone a un probador bien informado a trabajar para bloquear cualquier aplicación. Harán un uso inteligente de datos no válidos aleatorios para probar la aplicación de destino mediante la realización de acciones aleatorias. Esto hace que las pruebas sean más rápidas. Se garantiza que los datos no válidos se manejen correctamente y que la aplicación se ejecute correctamente en situaciones no válidas esperadas.

Prueba del mono brillante

Los monos brillantes son los que tienen las siguientes características:

  • Los probadores brillantes tienen una buena cantidad de conocimiento sobre la forma en que las personas pueden usar un producto.
  • Conocen todas las dinámicas del comportamiento del usuario y también pueden señalar la posibilidad de que surja algún error.

El probador bien informado es designado por el gerente para llevar a cabo la operación. Estos funcionan mejor que los tontos en cualquier momento. Los usuarios finales de la vida real pueden resultar más útiles, ya que pueden estar utilizando un conjunto diferente de datos en varias secuencias. Utilizan perspectivas del dominio real para probar la aplicación. El probador puede implementarse para trabajar en el dominio específico de su experiencia.


¿Cómo analizar los resultados de las pruebas con monos?

Los errores que se generan requieren un análisis detallado porque la reproducción de los errores no es fácil, y los pasos para hacerlo a veces son desconocidos. El momento adecuado para usar esta técnica de prueba puede ser en las últimas etapas de toda la operación de prueba de todas las funcionalidades, y una vez que se demuestre que la aplicación es efectiva. Si se hace al principio, hay un mayor riesgo involucrado. El uso de un script o programa que utiliza entradas de datos aleatorios válidos y no válidos facilita el análisis.


¿Cuáles son algunas otras pruebas competentes para la prueba de monos?

Prueba de gorila

Este probador de software se utiliza para un módulo de cualquier programa que se prueba repetidamente para garantizar su funcionamiento correcto y funcionamiento libre de errores. Las pruebas se pueden ejecutar más de cien veces a través del módulo y eso también de manera similar cada vez. Esta prueba no es aleatoria ni predefinida. Solo se puede usar para módulos exclusivos con algunas comprobaciones de prueba.

Pruebas ad-hoc

La prueba de mono se considera un subtipo de esta prueba. El probador que lo realiza conoce el software y está funcionando. Esta prueba se realiza sin ninguna preparación y sin tener en cuenta ningún caso de prueba o SRS. El objetivo principal de esto es dividir la aplicación en subpartes al azar y luego verificar su funcionamiento si falla o no.


¿Existen herramientas que ayuden a las pruebas de monos?

Sí, hay una serie de herramientas que automatizan las pruebas de Monkey y lo ayudan a funcionar de manera eficiente. Generan datos aleatorios o precargados y luego los insertan en el software. También realizan acciones aleatorias y observan cualquiera que sea el resultado. Estas herramientas tardan algún tiempo en configurarse, pero una vez hechas; realizan pruebas de manera muy eficiente. Este es el proceso básico a seguir al usar cualquier herramienta de este tipo:

  1. El primer paso, como para cualquier herramienta general, es registrar el software con el servidor dedicado particular.
  2. Debe estar preparado con todas las referencias necesarias para crear el conjunto de pruebas.
  3. Ejecute el traje de prueba entonces.
  4. Se creará un archivo de registro de la prueba con el nombre "Prueba de mono, "Que registrará todos los resultados de la prueba generados.
  5. Debe recordar que las pruebas continuarán ejecutándose hasta que el sistema alcance el punto de bloqueo. Es aquí donde se informa la acción final y se guarda en el archivo de registro.
  6. El paso final ocurre cuando el evaluador en cuestión ve el informe final para observación. Estos datos se pueden guardar para cualquier referencia futura.

Herramientas de prueba de monos para Android

MonkeyRunner es una herramienta que se puede utilizar para probar cualquier Android solicitud. Con la ayuda de la programación de Python, la herramienta puede instalar y ejecutar cualquier programa, enviar datos, tomar capturas de pantalla y guardarlo en la PC. Está diseñado para pruebas funcionales y de marco y también puede realizar pruebas aleatorias.

Monkey UI / Ejercitador de aplicaciones para Android

Es diferente de la herramienta y genera eventos de usuario y sistema para cualquier seudo flujo aleatorio. Este ejercitador se ejecuta en el interior del emulador o el dispositivo en el shell ADB.


Conclusión

Prueba de mono aún no se ha hundido bien con la industria del software, ya que es un recién llegado y todavía compite con los mejores y más rentables métodos de prueba. Sería mejor realizar otras pruebas y estabilizar la aplicación antes de recurrir a las pruebas de Monkey. Sin embargo, es ventajoso para descubrir nuevos errores y situaciones más desagradables y lograr mejores resultados. Con una mejor planificación, puede dar mejores resultados.