Comment : regrouper et exécuter des tests automatisés à l'aide de catégories de test
Les catégories de test vous permettent d'exécuter des groupes de tests selon leurs catégories assignées sans qu'il soit nécessaire de maintenir des listes de tests.Une catégorie de test est un attribut de méthode de test que vous pouvez assigner à un ou plusieurs tests.
Vous pouvez utiliser des opérateurs logiques avec les catégories de test pour exécuter des tests à partir de plusieurs catégories ou pour limiter les tests que vous exécutez à des tests qui appartiennent à plusieurs catégories.Les catégories de test sont également faciles à ajouter lors de la création de vos méthodes de test et vous n'avez pas besoin de gérer des listes de tests après la création.
Configuration requise
- Visual Studio Ultimate, Visual Studio Premium, Visual Studio Test Professional
Création et assignation de catégories de test
Pour ajouter manuellement des catégories de test à un test
Dans votre projet de test unitaire ou de test codé d'interface utilisateur, dans l'Explorateur de solutions, ouvrez le fichier qui contient le test unitaire, puis recherchez la méthode de test unitaire à modifier.
Directement au-dessus de la déclaration de méthode de test, ajoutez un attribut (TestCategory ()) pour chaque catégorie de test à assigner au test.Séparez chaque attribut avec une virgule.
Ajoutez le nom de catégorie entre parenthèses à chaque attribut (TestCategory ()).L'exemple suivant illustre une méthode à laquelle sont assignées trois catégories de test nommées "Nightly", "Weekly", et "ShoppingCart" :
[TestCategory("Nightly"), TestCategory("Weekly"), TestCategory("ShoppingCart"), TestMethod()] public Void DebitTest() { }
Exécution des tests par catégories
Lorsque vous exécutez des tests à partir de la ligne de commande, vous pouvez également utiliser les opérateurs logiques & (AND), | (OR) et ! (NOT) pour sélectionner les tests à exécuter en fonction des catégories assignées aux tests.
Pour exécuter un test à l'aide de catégories de la ligne de commande
Ouvrez une invite de commandes Visual Studio.
Pour cela, cliquez sur Démarrer, pointez sur Tous les programmes, sur Microsoft Visual Studio 2012, sur Visual Studio Tools, puis cliquez sur Invité de commandes développeur.
Par défaut, l'invite de commandes Visual Studio s'ouvre au dossier suivant :
<lettre du lecteur>:\Program Files\Microsoft Visual Studio 11.0\VC
[!REMARQUE]
Pour modifier le dossier auquel la fenêtre d'invite de commandes s'ouvre par défaut, cliquez sur Démarrer, pointez sur Microsoft Visual Studio 2012, sur Visual Studio Tools, cliquez avec le bouton droit sur Invite de commandes développeur, puis cliquez sur Propriétés.Dans la boîte de dialogue Propriétés de Invite de commandes développeur, vous pouvez modifier le chemin d'accès au dossier par défaut dans la zone Démarrer dans.
Remplacez le répertoire par l'emplacement de votre dossier de solution où se trouve le conteneur de test. Il s'agit en général du fichier .dll du projet de test. Ou, lorsque vous exécutez l'étape 3 du programme MSTest.exe, spécifiez un chemin d'accès complet ou relatif pour le conteneur de test.
Pour identifier votre dossier de solution, identifiez d'abord le dossier de projets Visual Studio.Pour cela, cliquez sur Options dans le menu Outils dans Visual Studio, puis cliquez sur Projets et solutions.Sous Emplacement des projets Visual Studio, un chemin d'accès tel que le suivant est affiché :
<drive letter>:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects
Votre dossier de solution est en général un enfant de ce dossier de projets, tel que le dossier Bank dans l'exemple suivant :
<drive letter>:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects\Bank
Pour exécuter les tests assignés à la catégorie « Nightly », exécutez VSTest.Console.exe à l'aide de l'option /TestCaseFilter, ou MSTest.exe à l'aide de l'option /testcontainer et /category :
VSTest.Console.exe
Vstest.console.exe myTestProject.dll /TestCaseFilter:”TestCategory="Nightly"
MSTest.exe
mstest /testcontainer:MyTestprojectName.dll /category:"Nightly"
Les résultats et le résumé s'affichent dans la fenêtre d'invite de commandes.
[!REMARQUE]
Vous pouvez utiliser AND ou OR dans votre expression pour sélectionner des catégories de test, mais pas les deux à la fois dans la même expression.
Pour plus d'informations, consultez Options de ligne de commande VSTest.Console.exe, Comment : exécuter des tests automatisés à partir de la ligne de commande à l'aide de MSTest et Options de ligne de commande MSTest.exe.