J'ai une grande suite de tests dans un projet .NET Core. Je peux utiliser la fenêtre de l'Explorateur de tests pour sélectionner quelques tests à exécuter.
Je peux également exécuter la suite de tests entier sur la ligne de commande avec dotnet test
. Existe-t-il un moyen d'exécuter un seul (ou quelques) tests sur la ligne de commande?
Avec la version 1.0.0 de dotnet, vous devez utiliser l'option --filter:
Vous pouvez filtrer par DisplayName, FullyQualifiedName et Traits.
Ex:
dotnet test --filter "FullyQualifiedName=YourNamespace.TestClass1.Test1"
De plus, ces opérateurs sont autorisés: =,! = Et ~ (contient).
Plus d'informations ici: docs
Cette réponse est dépassée ...
Ceci est spécifique à xunit: dotnet test -method <test name>
<test name>
est le nom complet de la méthode (espace de noms + classe + nom de méthode)
Si vos tests sont un Theory
, AFAIK, il n'y a aucun moyen de spécifier la théorie à exécuter. Il les exécutera tous.
Étant donné que cette question est étiquetée avec xUnit, la commande de la commande CLI dotnet xUnit est la suivante:
dotnet xunit -method FullyQualifiedName