monkey & monkey runner

Post on 20-Jun-2015

417 Views

Category:

Technology

5 Downloads

Preview:

Click to see full reader

DESCRIPTION

Présentation élaborée par Mlle. Emna Khallouli dans le cadre des sessions de Lightning Talks à l'Orange Developer Center.

TRANSCRIPT

Lightning Talks: Monkey & Monkey Runner

Elaboré par: Khallouli EmnaDate :10/04/2014

2 Orange diagrams library

Plan

Section1:Monkey

Section2:Monkey Runner

Section3: Conclusion

3

Monkey

Orange diagrams library

4 Orange diagrams library

1.Présentation

Consol

e

Android device connected via USB

Screenshots are saved to file

.apk file

testScript

5 Orange diagrams library

2.Les possibilités du Monkey et son paramétrage

La ligne de commande en question possède plusieurs options nous offrant différentes perspectives pour nos test :

le nombre d’évènements que le singe effectuera, et la spécification de leur type et de leur fréquence

si votre application fait appel à d’autres package, vous avez la possibilité de les bloquer

des options de débogage, qui permettent par exemple de ne pas stopper le Monkey lorsqu’il fait crasher votre application, chose qui s’effectue par défaut.

6 Orange diagrams library

3.Un peu de pratique

7

La ligne de commande de base se présente sous la forme suivante :

>adb shell monkey [options] <event-count>

>adb shell monkey -p com.orange.monkey -p com.google.android.apps.maps 200

Orange diagrams library

8

Les options d’évènement sont assez nombreuses et utiles :

déclarer un pourcentage sur tel ou tel type d’évènement (touch, trackball etc…) sur le nombre total d’évènements

refaire plusieurs fois la même séquence d’évènements avec l’option -s

définir un temps (en millisecondes) entre chaque évènement

>adb shell monkey -p com.orange.monkey  -s 1 --throttle 10 --pct-trackball 20 --pct-motion 50 200

Orange diagrams library

9 Orange diagrams library

isUserAMonkey?

if (!ActivityManager.isUserAMonkey()){ ProgressDialog.show(this, "Title", "DialogMessage", true, true);}

10

Monkey Runner

Orange diagrams library

11

1.C ’est quoi le Monkey Runner ?

• C’est un outil qui fournit une API pour écrire des programmes qui contrôlent un appareil Android ou un émulateur.

• Il s'agit d'un outil de test de python, utilisé pour exécuter des scripts Python pour tester des applications Android.

• Il utilise Jython, une implémentation de Python qui utilise le langage de programmation Java

Orange diagrams library

12

Pourquoi on utilise Monkey Runner?

• Il est principalement conçu pour tester les applications et les dispositifs au niveau fonctionnel et pour l'exécution

• Il peut être utilisé pour tester une application contre un clique au hasard sur l'application

Orange diagrams library

13

Vous pouvez écrire des programmes Python pour tester les applications sur un ou plusieurs dispositifs et / ou des émulateurs

Avec MonkeyRunner, vous pouvez :

•Installer une application

•Exécuter une application

•Prendre des captures d'écran de l'interface utilisateur

Orange diagrams library

Ce que vous pouvez faire avec MonkeyRunner??

14

Caractéristiques de MonkeyRunner

Contrôle des périphériques multiples

Tests fonctionnels

Test de régression

Automatisation Extensible

Orange diagrams library

15

Trois classes sont disponibles :

1. MonkeyRunner: pour interagir avec un téléphone ou un émulateur,

2. MonkeyDevice: pour se connecter, faire des pauses,

3. MonkeyImage: pour manipuler des images, les comparer.

Orange diagrams library

16

Les méthodes de Monkey Runner

Orange diagrams library

Méthode Déscriptionalert (string message, string title, string okTitle)

Affiche un message d'alerte au processus en cours d'exécution du programme en cours

choice(string message, iterable choices, string  title)

Affiche une boîte de dialogue avec une liste de choix pour le processus en cours d'exécution du programme en cours

help (string format)

Affiche la référence de l'API monkeyrunner dans un style similaire à celui de l'outil de pydoc de Python

17 Orange diagrams library

Méthode Déscriptioninput (string message, string initialValue, string title, string okTitle, string  cancelTitle)

Affiche une boîte de dialogue qui accepte la saisie

sleep (float seconds)

Suspend le programme actuel pour le nombre de secondes

waitForConnection float timeout, string deviceId)

Essaie de faire un lien entre le backend monkeyrunner et le périphérique ou l'émulateur spécifiée

18

Conclusion

Monkey et Monkey Runner permettent de tester la stabilité de vos applications du point de vue de l'interface utilisateur.

Orange diagrams library

Merci pour votre attention

Orange, the Orange mark and any other Orange product or service names referred to in this material are trade marks of Orange Brand Services Limited.

Orange restricted.

top related