Tengo que evaluar regularmente la disponibilidad y el funcionamiento de un sitio web de alquiler de películas. Escribí un programa de Windows que puede automatizar un navegador web de acuerdo con un script, por lo que esta tarea está básicamente resuelta. Ahora tengo que automatizar la versión móvil de esta aplicación web: una aplicación nativa de iOS y una aplicación nativa de Android.¿Cómo puedo probar automáticamente la funcionalidad de las aplicaciones iOS y Android?
Estas aplicaciones son de código cerrado, por lo que no se pueden modificar de ninguna manera. Creo que la aplicación de prueba debe implementarse en los dispositivos de prueba (iPhone, iPad, Galaxy Tab, Galaxy S II), pero debo poder controlarla a distancia. Quiero decir, me gustaría crear una conexión entre los dispositivos de prueba y una PC, cargar los guiones de prueba de la PC a los dispositivos, ejecutarlos y descargar los resultados de las pruebas a la PC. El script de prueba debe iniciar la aplicación para probarla, manipular su GUI (rellenar cuadros de edición, botones, etc.) y seguir su respuesta de alguna manera, por ejemplo, analizando la GUI (la existencia de algunos elementos de GUI, sus leyendas, etc.) , analizando capturas de pantalla y/o inspeccionando paquetes de IP.
Escribí muchos programas de prueba similares para Windows: utilicé ShellExecute, PostMessage, FindWindow, la biblioteca WinPcap, etc., así que sé cómo debería funcionar un programa así. Pero como nunca escribí aplicaciones para sistemas operativos móviles, ni siquiera sé si hay API y bibliotecas similares para iOS y Android.
Me gustaría saber por dónde empezar, es decir, qué SDK y herramientas de desarrollador podrían usarse para escribir una aplicación de este tipo. También estoy interesado en soluciones comerciales. Realmente apreciaria cualquier ayuda.
"El script de prueba debe iniciar la aplicación para probar, manipular su GUI (rellenar cuadros de edición, botones, etc.)" no posible para iOS (puede ser posible con jailbreak), no estoy seguro acerca de Android – msk
@MSK Gracias. Estas son malas noticias :(¿Es posible ejecutar una aplicación iOS en Mac OS X, desde un emulador, y automatizarla como si fuera una aplicación de escritorio? – kol
Si usa una macro de mouse/teclado no veo por qué, para Android, puede consultar monkeyrunner http://developer.android.com/tools/help/monkeyrunner_concepts.html – mario