Utilisation de VSTest.console à partir de la ligne de commande
Publication: juillet 2016
Exécutez des tests unitaires ou codés de l'interface utilisateur à partir de la ligne de commande avec VSTest.Console.exe. Il est optimisé pour les performances et est utilisé à la place de MSTest.exe dans Visual Studio 2012 ou ultérieur.
Spécifiez plusieurs options dans un ordre quelconque sur la ligne de commande de VSTest.Console.exe. Ces options sont répertoriées dans le tableau Options de ligne de commande générales ci-dessous.
vstest.console.exe interprète ces options et les valeurs que vous spécifiez sans distinction minuscules/majuscules.
Le tableau suivant répertorie toutes les options de VSTest.Console.exe, ainsi que leurs brèves descriptions. Vous pouvez afficher un résumé semblable en tapant VSTest.Console /? sur une ligne de commande. VSTest.Console.exe se trouve ici : C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow.
Notes
L'adaptateur MSTest de Visual Studio 2012 fonctionne également en mode CAS hérité (équivalent de l'exécution de tests avec mstest.exe) pour la compatibilité. En mode CAS hérité, il ne peut pas tirer parti des nouvelles fonctionnalités VS11 TestCaseFilter. L'adaptateur peut basculer en mode hérité lorsque le fichier .testsettings est spécifié, que forcelegacymode a la valeur true dans le fichier .runsettings, ou à l'aide d'attributs comme HostType.
Notes
Pour exécuter des tests automatisés sur un ordinateur basé sur une architecture ARM, vous devez utiliser VSTest.Console.exe.
Options de ligne de commande générales
/Settings:[nom du fichier] |
Exécutez les tests avec d'autres paramètres tels que les collecteurs de données. Exemple : /Settings:Local.RunSettings |
/Tests:[nom du test] |
Exécutez les tests avec les noms qui correspondent aux valeurs fournies. Pour fournir plusieurs valeurs, séparez-les par des virgules. Exemple : /Tests:TestMethod1,testMethod2 Avertissement L'option de ligne de commande /Tests ne peut pas être utilisée avec l'option de ligne de commande /TestCaseFilter. |
/Enablecodecoverage |
Active l'adaptateur de données de diagnostic CodeCoverage dans la série de tests. Les paramètres par défaut sont utilisés s'ils ne sont pas spécifiés à l'aide du fichier de paramètres. |
/InIsolation |
Exécute les tests dans un processus isolé. De ce fait, il est moins probable que le processus vstest.console.exe soit arrêté sur une erreur dans les tests, mais les tests peuvent s'exécuter plus lentement. |
/UseVsixExtensions |
Il s'ensuit que le processus vstest.console.exe utilise ou ignore les extensions VSIX installées (le cas échéant) dans la série de tests. Exemple : /UseVsixExtensions:true |
/Platform:[type de plateforme] |
Architecture de plateforme cible à utiliser pour l'exécution des tests. Les valeurs valides sont x86, x64 et ARM. |
/Framework: [version du framework] |
Version .Net Framework cible à utiliser pour l'exécution des tests. Les valeurs valides sont Framework35, Framework40 et Framework45. Exemple : /Framework:framework40 |
/TestCaseFilter:[expression] |
Exécutez les tests qui correspondent à l'expression donnée. <Expression> est au format <propriété>=<valeur>[|<Expression>]. Exemple : /TestCaseFilter:"Priority=1" Exemple : /TestCaseFilter:"TestCategory=Nightly|FullyQualifiedName=Namespace.ClassName.MethodName" Avertissement L'option de ligne de commande /TestCaseFilter ne peut pas être utilisée avec l'option de ligne de commande /Tests. |
/Logger:[URI/NomConvivial] |
Spécifiez un journal pour les résultats de tests. Par exemple, pour stocker les résultats dans les fichiers de résultats des tests de Visual Studio (TRX), utilisez /Logger:trx. Exemple : Pour publier les résultats des tests dans Team Foundation Server, utilisez TfsPublisher : /logger:TfsPublisher; Collection=<team project url>; BuildName=<build name>; TeamProject=<team project name>; [;Platform=<Defaults to “Any CPU”>] [;Flavor=<Defaults to “Debug”>] [;RunTitle=<title>] Notes L'enregistreur d'événements TfsPublisher nécessite Visual Studio 2012 avec [Visual Studio 2012.1] ou une version ultérieure. |
/ListTests:[nom du fichier] |
Répertorie les tests détectés dans le conteneur de tests donné. |
/ListDiscoverers |
Répertorie les découvreurs de test installés. |
/ListExecutors |
Répertorie les exécuteurs de test installés. |
/ListLoggers |
Répertorie les journaux de test installés. |
/ListSettingsProviders |
Répertorie les fournisseurs de paramètres installés. |
Utilisation de VSTest.Console.exe avec les fichiers de test
La syntaxe de vstest.console.exe est :
Vstest.console.exe [TestFileNames] [Options]
Voici un exemple d'utilisation de VSTest.Console.exe à partir de la ligne de commande :
Vstest.console.exe myTestProject.dll
Voici un exemple de l'utilisation de VSTest.Console.exe à partir de la ligne de commande à l'aide de plusieurs fichiers de test. Pour ce faire, séparez les noms de fichiers de test par des espaces :
Vstest.console.exe myTestFile.dll myOtherTestFile.dll
Exemple
L'exemple suivant illustre l'utilisation de certaines options pour exécuter Vstest.console.exe. Dans ce cas, il va exécuter les tests dans le fichier myTestFile.dll, tout en collectant les données spécifiées dans le fichier Local.RunSettings et dans un processus isolé. En outre, il filtrera les cas de test à exécuter en se basant sur « Priorité 1 » et stockera les résultats dans un fichier .trx.
vstest.console.exe myTestFile.dll /Settings:Local.RunSettings /InIsolation /TestCaseFilter:"Priority=1" /Logger:trx
Voir aussi
Exécution de tests automatisés à partir de la ligne de commande
Compatibility of Test Settings with Visual Studio 2010
Upgrading Tests from Earlier Versions of Visual Studio