Dans Tradefed, chaque demande de test passe par le planificateur de commandes pour être exécutée. Le Command Scheduler est donc un élément clé du harnais nécessaire à l’exécution des tests.
Cycle de vie
Lorsqu'une demande de test est présentée à Tradefed (par exemple, une entrée depuis la console), elle passera par les événements suivants avant d'être exécutée :
- La demande de test est analysée - Une demande de test est généralement composée d'une référence de configuration XML Tradefed suivie d'options. Par exemple :
> run host --class com.android.tradefed.build.BuildInfoTest
- Le Gestionnaire de périphériques est demandé pour les appareils correspondant à la demande de test - Le Gestionnaire de périphériques alloue un appareil qui correspond aux demandes de test. Par exemple, si un appareil Pixel est demandé, le Gestionnaire de périphériques recherchera un appareil Pixel disponible.
- La demande de test + le(s) périphérique(s) démarre comme une invocation - Les tests démarrent.
- Libération de l'appareil - Une fois l'invocation terminée, l'appareil alloué sera libéré et pourra être alloué à d'autres tests.
Invocation de Tradefed
Une invocation dans Tradefed fait référence au moment où une commande de test est en cours d'exécution. Les appareils inclus dans l’appel sont marqués comme allocated
et ne peuvent pas être utilisés par d’autres tests pour s’exécuter.
TF exécutera les étapes suivantes dans cet ordre :
- Téléchargement d'artefacts de création et de test
- Préparation de la cible
- Exécution des tests
- Nettoyage de la cible
- Rapport sur les résultats
Chaque étape est décrite plus en détail dans la section Architecture .