Structure d'un lanceur de test

Le lanceur de test est l'unité d'exécution du flux d'invocation. C'est là que les tests s'exécutent réellement.

Interfaces

Les exécutants de tests sont définis via l'interface IRemoteTest, qui fournit une méthode run simple à implémenter et qui sera appelée lorsque les tests devront être exécutés.

Cela permet de définir une série de tests de la manière la plus simple possible. Cependant, en pratique, les rédacteurs de tests auront besoin de plus d'informations pour écrire correctement leurs tests, généralement des informations sur la compilation et l'appareil. C'est là que les interfaces suivantes s'avèrent utiles.

Standard

Ces deux interfaces sont les plus utilisées aujourd'hui, car elles répondent aux besoins de base de la plupart des tests.

  • IBuildReceiver permet au test d'obtenir l'objet IBuildInfo créé à l'étape du fournisseur de compilation contenant toutes les informations et tous les artefacts liés à la configuration du test.
  • IDeviceTest permet à TF de recevoir l'objet ITestDevice qui représente l'appareil testé et fournit une API pour interagir avec lui.

Avancé

Il existe des interfaces supplémentaires qui permettent une interaction plus complexe entre le harnais de test et le lanceur de tests :

  • ITestFilterReceiver, qui permet au test de recevoir un ensemble de filtres pour n'exécuter que certains tests. Cela est utile pour exécuter un sous-ensemble de tests.
  • ITestCollector, qui permet à un exécuteur de tests de simuler uniquement les tests au lieu de les exécuter réellement. Cela permet de collecter la liste de tous les scénarios de test.

Exécuteurs de tests existants

Il existe déjà différents testeurs, dont certains pour les principaux types de tests :

Il existe un grand nombre d'exécuteurs de tests personnalisés en plus de ceux mentionnés ci-dessus. Ils servent à des fins spécialisées pour certains tests fonctionnels, par exemple le test de démarrage.

Écrire un nouveau lanceur de test

Pour obtenir plus d'informations sur l'écriture d'un nouveau test runner, consultez la section Écrire des tests.