2010-10-19 5 views
7

Actualmente uso el Android Monkey tool para pruebas de sistema/paquetes de Android. Encuentro que es útil. Pero hasta ahora todo ha sido prueba manual (es decir, emulador abierto, ejecutar adb shell monkey < ...>, etc.). Me gustaría "automatizar" esto y tenerlo activado externamente por un servidor de compilación.Ideas para automatizar Android Monkey ejecuta

Mi initial instinto es simplemente escribir un script de shell para ejecutar monkey (usando semillas aleatorias) y luego almacenar los resultados en un archivo accesible del servidor de compilación. ¿Pero esto es realmente útil?

Solo curiosidad por si alguien ha hecho esto antes y/o tiene una idea "más inteligente" para automatizar las ejecuciones de Android Monkey. Una búsqueda en Google utilizando los términos "automatizar el mono androide" arrojó poca información relevante.

Todas las opiniones son bienvenidas.

+0

Hace mucho tiempo que esto se planteó, cualquier solución reciente a este aparte de bash/ – nullpointer

Respuesta

10

Actualización:

decidí ir con un simple script de shell ya que no podía pensar en nada más "inteligentes" que hacer. Todavía es un trabajo en progreso. Aquí se encuentra en su estado actual:

#!/bin/bash 

REPORTROOT=./reports 

# remove old report files 
echo "Removing old output report files..." 
rm $REPORTROOT 

# make dir for new report files 
echo "Output reports will be stored in $REPORTROOT..." 
mkdir $REPORTROOT 

# run monkey on the entire system 
echo "Running Monkey on entire system..." 
adb -e shell monkey -v -v -v 500 > $REPORTROOT/monkey_sys.txt 
# pull the log file from device? 

# run monkey on particular packages 
# packages here... 

# create composite report 
echo "Running reports..." 
grep -A 5 -h -r CRASH $REPORTROOT > $REPORTROOT/crash_report.txt 

La salida es un archivo .txt sencillo con unas líneas sobre ningún tipo de accidentes.

+0

gracias esto era justo lo que estaba buscando! – serenskye

7

Podrías mirar a Hudson, que debería ser capaz de iniciar un emulador y luego hacer tus comandos de mono en Android.

+0

Esto, más el complemento Hudson Android Emulator. –

+0

Absolutamente - eso es lo que quise decir, pero simplemente no lo dijo: -/ –

+0

¡Muy buen comentario! Ya tengo el servidor de compilación comenzando una instancia de emulador y ejecutando un montón de InstrumentationTestCases y presentando los resultados. Tenía la esperanza de que hubiera alguien por ahí que automatizara específicamente las ejecuciones de Monkey y descubriera que era útil/no útil (un tipo de lecciones aprendidas para automatizar Monkey). – dstricks

Cuestiones relacionadas