Partager via


Utiliser votre système de build pour exécuter des tests automatisés

Vous pouvez définir un processus de génération qui exécute des tests et analyse l'impact des modifications du code sur vos tests. Par exemple, vous pouvez définir un processus de génération à utiliser comme exécution de test de vérification de build planifiée régulièrement par votre équipe.

Dans cette rubrique

  • Préparer l'exécution de tests dans votre processus de génération

  • Utiliser des tests dans une build qui est basée sur DefaultTemplate.xaml

    • Autorisations requises

    • Exécuter des tests automatisés

    • Désactiver temporairement des tests

    • Activer l'analyse d'impact des tests

  • Utiliser des tests dans un processus de génération personnalisé

  • Pour plus d'informations

Préparer l'exécution de tests dans votre processus de génération

Préparer vos tests : assurez-vous que les tests que vous allez exécuter à partir de votre processus de génération n'affichent pas d'interface utilisateur. En général, les tests qui affichent une interface utilisateur ne conviennent pas pour l'exécution de votre système de génération. Si vous devez utiliser votre système de génération pour exécuter un test qui affiche une interface utilisateur, vous devez exécuter la définition de build sur un ordinateur qui s'exécute de manière interactive. Pour plus d'informations, consultez Configurer un ordinateur de build.

Préparer votre ordinateur de build : certains genres de test peuvent être exécutés uniquement par un agent de build sur un ordinateur de build qui est configuré de manière spécifique. Avant d'essayer d'utiliser votre processus de génération pour exécuter des tests, assurez-vous que ces derniers peuvent être exécutés sur l'ordinateur de build que vous prévoyez d'utiliser. Pour plus d'informations, consultez Utilisation de votre agent de build pour l'exécution de tests.

Utiliser des tests dans une build qui est basée sur DefaultTemplate.xaml

Vous pouvez concevoir votre build pour l'exécution d'une ou de plusieurs séries de tests automatisés et pour l'analyse de l'impact des modifications du code sur vos tests.

Autorisations requises

Pour que vous puissiez effectuer ces procédures, votre autorisation Modifier la définition de build doit avoir la valeur Autoriser. Pour plus d'informations, consultez Autorisations de Team Foundation Server.

Exécuter des tests automatisés

Vous pouvez concevoir votre build de façon à exécuter une ou plusieurs séries de tests automatisés. Pour chaque série de tests que vous configurez, vous pouvez spécifier les paramètres suivants :

  • quels tests sont exécutés ;

  • quels paramètres sont utilisés pour exécuter les tests ;

  • si la génération doit échouer en cas d'échec d'un test.

Pour configurer votre build afin d'exécuter des tests automatisés

  1. Sous l'onglet Processus de votre définition de build, développez le nœud Basic.

  2. Activez la case Tests automatisés, puis cliquez sur le bouton de sélection (...) dans cette case.

    La boîte de dialogue Tests automatisés s'affiche.

  3. Effectuez l'une des opérations suivantes :

    • Pour ajouter une série de tests, cliquez sur Ajouter.

    • Pour modifier une série de tests existante, cliquez dessus, puis sur Modifier.

    La boîte de dialogue Ajouter/Modifier un test s'affiche.

  4. Cliquez sur la méthode à utiliser pour exécuter les tests :

    • Spécification de fichier d'assembly de test (recommandée)

      Conservez la valeur par défaut (**\*test*.dll) pour que l'agent de build recherche de manière récursive tous les fichiers .dll qui correspondent à *test*.dll dans le sous-répertoire binaries du répertoire de travail de l'agent de build. Vous avez également la possibilité de modifier la spécification de fichier en fonction de vos besoins.

      (Facultatif) Spécifiez un Fichier de paramètres de test pour configurer la façon dont les tests sont exécutés. Pour plus d'informations, consultez Créer des paramètres de test pour exécuter des tests automatisés à partir de Visual Studio.

    • Fichier de métadonnées de test (.vsmdi)

      Si vous cliquez sur cette option, cliquez sur Parcourir pour localiser et spécifier le fichier de métadonnées de test que vous souhaitez utiliser. Vous pouvez alors conserver la sélection de la case à cocher Exécuter tous les tests dans ce fichier VSMDI ou désactiver cette case à cocher et sélectionner un ou plusieurs tests dans la liste Listes de tests à exécuter.

      Pour plus d'informations, consultez Définition de listes de tests pour regrouper des tests.

  5. Cliquez sur l'onglet Critères/Argument.

  6. (Facultatif) Filtrez les tests à exécuter par catégorie.

    Pour plus d'informations, consultez Spécifier des catégories de test plus loin dans cette rubrique.

  7. (Facultatif) Filtrez les tests à exécuter par priorité.

    Conseil

    Si vous assignez des priorités à vos tests, vous pouvez utiliser ce paramètre pour définir un meilleur équilibre entre test complet et builds plus rapides.

    Affectez à Priorité de test minimale un entier positif inférieur ou égal à Priorité de test maximale ou -1 pour indiquer qu'il n'y a pas de valeur minimale.

    Affectez à Priorité de test maximale un entier positif supérieur ou égal à Priorité de test minimale ou la valeur -1 pour indiquer qu'il n'y a pas de valeur maximale.

  8. Si vous voulez que la build échoue si l'un des tests de cette série de tests échoue, activez la case à cocher Faire échouer la build en cas d'échec du test. Si vous n'activez pas cette case à cocher et qu'un test échoue, la build terminée aura le statut Succès partiel.

  9. Cliquez sur OK.

Spécifier des catégories de test

Vous pouvez utiliser des catégories de test pour filtrer les tests exécutés pendant une série de tests.

Classer vos tests

Vous pouvez assigner des catégories à vos tests en utilisant Test Professional. Vous pouvez ainsi créer une catégorie de test appelée CI, puis spécifier cette catégorie dans vos builds d'intégration continue. Vous pouvez créer une autre catégorie pour vos tests de vérification de build, intitulée bvt, puis spécifier cette catégorie dans les builds planifiées, telles que votre build nocturne.

Pour plus d'informations, consultez Définition de catégories de test pour regrouper vos tests.

Spécifier des catégories de test pour une série de tests

Vous pouvez spécifier des catégories de test en procédant comme suit :

  • Lorsque vous créez la série de tests, comme expliqué précédemment dans cette rubrique.

  • En modifiant une série de tests existante. (Vous modifiez une série de tests existante en développant le nœud Basic, le nœud Tests automatisés et la série de tests à modifier, puis en cliquant dans la zone Filtre de catégorie.)

Vous pouvez spécifier des catégories de test selon l'une des méthodes suivantes :

  • Spécifiez une catégorie de test unique à inclure ou exclure. Supposons que vous possédiez une catégorie de test nommée bvt. Vous affectez la valeur bvt à ce paramètre pour exécuter uniquement les tests de cette catégorie ou la valeur !bvt pour exécuter tous les tests à l'exception des tests de cette catégorie.

  • Spécifiez plusieurs catégories de test à l'aide de && (opérateur « and ») et ! (opérateur "not"). Par exemple, vous pouvez spécifier quick&&gui&&!deep pour exécuter uniquement les tests qui font partie des catégories quick et gui, mais qui n'appartiennent pas à la catégorie deep.

  • Spécifiez plusieurs catégories de test à l'aide de | (opérateur "or") et ! (opérateur "not"). Par exemple, vous pouvez spécifier quick|gui|!deep pour exécuter les tests qui font partie de la catégorie quick, les tests qui font partie de la catégorie gui, et ceux qui n'appartiennent pas à la catégorie deep.

Configurer plusieurs séries de tests

Vous pouvez configurer autant de séries de tests que vous le souhaitez afin de satisfaire les exigences de processus de génération et de test de votre équipe. Par exemple, vous devrez peut-être configurer plusieurs séries de tests dans une seule build dans les scénarios suivants :

  • Vous possédez deux jeux de tests :

    • Un jeu de tests principaux de priorité élevée qui doivent réussir. Vous ajoutez une série de tests qui spécifie une Priorité de test minimale et une Priorité de test maximale de 1. Vous activez la case à cocher Faire échouer la build en cas d'échec du test.

    • Un jeu de tests moins importants que vous voulez exécuter mais qui ne sont pas requis pour que la build soit utilisable. Vous ajoutez une série de tests qui spécifie une Priorité de test minimale de 2 et une Priorité de test maximale de 3. Vous n'activez pas la case à cocher Faire échouer la build en cas d'échec du test.

  • Vous souhaitez exécuter le même jeu de tests avec des paramètres de test différents.

  • Vous voulez que le jeu principal d'assemblys que vous générez soit soumis à une couverture du code. Toutefois, vous possédez un autre jeu d'assemblys d'une source externe qui ne requiert pas de couverture du code. Pour activer ce genre de processus, vous pouvez utiliser deux séries de tests configurées pour utiliser deux jeux de fichiers de paramètres de test.

Désactiver temporairement des tests

Si vous devez désactiver temporairement des tests sans supprimer vos séries de tests, développez le nœud Avancé et affectez à Désactiver les tests la valeur True. Réaffectez la valeur False lorsque vous voulez à nouveau activer les tests.

Activer l'analyse d'impact des tests

Vos testeurs et développeurs peuvent avoir besoin de savoir de quelle façon les modifications de code comprises dans une build terminée affectent vos tests. Lorsque vous activez l'analyse d'impact des tests dans une build, le système analyse, puis signale comment les modifications de code ont affecté vos tests dans le rapport de la build terminée.

Pour activer l'analyse d'impact des tests

  1. Configurez l'analyse d'impact des tests dans un fichier de paramètres de test.

    Pour plus d'informations, consultez Comment : collecter des données pour vérifier quels tests doivent être exécutés après les modifications de code.

  2. Créez une série de tests configurée pour utiliser le fichier de paramètres de test.

    Pour plus d'informations, consultez Exécuter des tests automatisés plus haut dans cette rubrique.

  3. Développez le nœud Avancé et assurez-vous que le paramètre Analyser l'impact des tests a la valeur True et que Désactiver les tests a la valeur False.

Utiliser des tests dans un processus de génération personnalisé

Vous pouvez exécuter des tests et analyser l'impact des modifications du code sur vos tests à partir d'un processus de génération personnalisé. Pour plus d'informations, consultez Exécuter les tests (activité MSTest).

Pour plus d'informations

Définir une build à l'aide du modèle par défaut fournit plus d'informations sur la création d'une définition de build qui est basée sur DefaultTemplate.xaml.

Comment : configurer et exécuter des tests planifiés après la génération de votre application fournit plus d'informations sur l'exécution de tests à partir de votre système de génération.

Voir aussi

Autres ressources

Définir votre processus de build

Historique des modifications

Date

Historique

Motif

Mai 2011

Ajout d'une rubrique.

Améliorations apportées aux informations.