Pour commencer les tests graphiques, l'outil officiel à savoir celui conseillé par l'équipe Android et surtout intégré dans android studio est Expresso.
Expresso
-
Manipulations de base de l'interface graphique.
-
Vérification du résultat attendu.
-
Gestion de l'attente des résultats asynchrones.
Android studio avec Expresso recorder
Enregistrement de test de manière simple.
Désactiver les animations pour les tests avec :
android { ...
testOptions { animationsDisabled = true }
}
Les liens pour débuter
L'identification d'une vue est possible que si elle est dessiné. Donc une vue recensé avec par exemple withId("monId") fera échoué le test si elle se trouve dans une position en dehors de l'écran. On peut remédier à cela avec scrollTo par exemple.
Les scénarios avancés
très vite vous risquez de vous rendre compte que pour des scénarios complexe vous vous retrouvez face à un mur! Tests sur des notifications, des quicktiles, en lien avec plusieurs applications, etc...
Pour nous aider nous pouvons utiliser un autre outil en complément:
uiAutomator
Les améliorations possibles
La verbosité des tests, avec des bibliothèques comme Barista, Kakao.
L'enregistrement des tests graphiques, qui ne prend pas encore en compte l'attente de résultats asynchrones. Et ne gère pas toutes les types de validations possibles.