J'ai googlé et trouvé les références utiles ci-dessous. Actuellement, je veux tout exécuter à partir de la ligne de commande (pour faciliter l'exécution et la rapidité) dans les cas:
Je ne sais pas comment puis-je écrire une commande correcte pour mes besoins ci-dessus.
Les références:
Après un certain temps, j'ai trouvé les conseils utiles ci-dessous.
%ProgramFiles%\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe
dans mon cas./testcontainer:Path\To\Your\TestProjectAssembly.dll
pour indiquer où vos tests sont codés. Vous pouvez spécifier plusieurs options '/ testcontainer' si nécessaire./test:TestFilter
pour filtrer les tests à exécuter. Notez que ce filtre est appliqué au nom complet de la méthode de test (c.-à-d. FullNamespace.Classname.MethodName)Actuellement, je peux avoir des réponses à mes besoins:
n test spécifique (ie. Un test écrit par une méthode marquée [TestMethod()]
)
Utilisation MSTest.exe
/container:
TheAssemblyContainingYourSpecificTest /test:
TheSpecificTestName
Tous les tests d'une classe
Utilisation MSTest.exe
/container:
TheAssemblyContainingYourClass /test:
TheClassNameWithFullNamespace
Notez que le /test:
est le filtre qui utilise le nom complet de la classe lors du filtrage.
Les autres sont toujours inconnus. Veuillez discuter si vous savez comment.
Pour le nombre 4. Pour exécuter tous les tests dans un assembly, c'est simplement:
mstest /testcontainer:YourCompiledTestAssembly.dll
Pour question
5 Tous les tests sauf ceux marqués comme catégorie [TestCategory ("some-category")]
Utilisation
mstest.exe /testcontainer:yourTests.dll /category:"!some-category"
Si vous devez exclure plusieurs catégories, utilisez
mstest.exe /testcontainer:yourTests.dll /category:"!group1&!group2"
Référence: / filtre de catégorie
Vous pourriez être intéressé par le pack Gallio . Il fournit une plate-forme d'automatisation commune gratuite pour exécuter vos tests (MSTest, MbUnit, NUnit, xUnit, etc.) avec divers exécuteurs de test (GUI, ligne de commande, PoSh, plugins pour des outils tiers, etc.)
En particulier, vous voudrez peut-être utiliser Gallio.Echo qui est un bon lanceur de test en ligne de commande:
Les testeurs Gallio ont également capacités de filtrage pour exécuter un sous-ensemble de vos tests unitaires uniquement (par exemple par catégorie, par appareil, etc.)