Me gustaría poner a prueba una aplicación de win32 mediante el envío de un montón de teclas al azar, y me pregunto si alguien podría indicarme algún software que pueda utilizar. Idealmente, debería ser capaz de especificar qué pulsaciones de teclado se pueden enviar, y la tasa de control (min/max aleatorio).software de prueba de monos para aplicaciones de Windows
Respuesta
Aquí está un pseudocódigo (ya que usted no mencionó el idioma que está utilizando):
- Crear una matriz que contiene el alfabeto de az, AZ, 0-9 (dependiendo de las teclas que desea para enviar)
- para i = 0 a NumberOfKeyStrokes
- rand()% SizeOfArray
- retardo para rand() milisegundos (la inferior de la gama, el más rápido las pulsaciones de teclas son)
- enviar a través de un API o como una cadena
Para obtener más información sobre cómo enviar un keystrike a una aplicación en Windows, la investigación de la API FindWindow y SendMessage
Gracias pero estoy buscando más una herramienta para hacer esto ... es por eso que no especifiqué un idioma en mi pregunta. Y además de eso, ¿por qué eliminaste la palabra clave "mono" en mi publicación? este es el nombre de la técnica: http://en.wikipedia.org/wiki/Monkey_test – Drealmer
Eche un vistazo a AutoIt. Tiene una interfaz COM, por lo que puede guiarlo desde cualquier idioma que admita COM. Escribí scripts de Python para automatizar las GUI.
Usaría un software macro, como AutoIt, como dijo jrbushell, o AutoHotkey. También permiten clics aleatorios ... :-) Ambos son gratuitos.
Eche un vistazo a la página web Fuzz Testing of Application Reliability de la Universidad de Wisconsin. Hicieron un estudio de investigación hace algunos años para probar la confiabilidad del software de escritorio y en esa página se encuentra un enlace a su sitio FTP que proporciona herramientas de prueba de fuzz.
He utilizado la herramienta fuzz-nt de ese sitio para mis propias pruebas y encontré con éxito varios errores en nuestra aplicación. No tiene opción de elegir los valores de entrada del teclado (pero se proporciona la fuente). En su lugar, le permite elegir entre estas fuentes de datos aleatorios:
- eventos de teclado al azar
- eventos aleatorios ratón
- eventos ventanas al azar (para ser utilizado con cuidado o mejor que no en todos)
- 1. ¿Cómo detengo la locura de los monos?
- 2. Cómo desarrollar aplicaciones de Windows
- 3. ¿Cómo crear una versión de prueba del software .NET?
- 4. Herramienta de automatización de prueba/libraries/framework para aplicaciones de escritorio de Windows C++ GUI
- 5. Mejor alternativa de desarrollo de aplicaciones de Windows para Windows
- 6. Marco de instalador de aplicaciones para Windows
- 7. Necesito consejos para diseñar el software 'a prueba de grietas'
- 8. actualizaciones automáticas de software de Windows
- 9. Software de prueba: fake vs stub
- 10. Prueba automatizada para aplicaciones de GUI C/C++
- 11. Depurador de aplicaciones para Windows 7 x64
- 12. Desarrollo de aplicaciones para Windows Phone 7
- 13. ¿Iconos predeterminados para aplicaciones de Windows?
- 14. Cómo escribir software para Windows usando Java?
- 15. Prueba de aplicaciones webforms de ASP.NET
- 16. ¿Desarrollando aplicaciones de Windows en Linux?
- 17. Alternativas a las clases básicas de reparación de monos
- 18. Prueba de unidad de software concurrente: ¿qué haces?
- 19. Seguimiento de uso para aplicaciones de escritorio de Windows
- 20. Prueba de fugas de memoria en aplicaciones .NET
- 21. Directorio de datos de aplicaciones de Windows
- 22. Software de grabación para QA
- 23. Software de grabación de pantalla para capturar defectos de software
- 24. Prueba automatizada de aplicaciones basadas en FLEX
- 25. ¿En qué dispositivos de hardware prueba sus aplicaciones de Android?
- 26. Programación de aplicaciones de Windows Mobile para ejecutar
- 27. Sistema de ayuda moderno para aplicaciones de Windows
- 28. Control de gráfico para aplicaciones estilo metro de Windows 8
- 29. Prueba automatizada de aplicaciones PhoneGap/Cordova
- 30. Patrón de diseño para actualizaciones de software
LOL, eso no lo hace al azar ¿no? : P –
Sí, debería decirlo de nuevo – Drealmer