我在.NET Core项目中有一个大型测试套件。我可以使用Test Explorer窗口选择要运行的几个测试。
我还可以在dotnet test
的命令行上运行整个测试套件。有没有办法在命令行上只运行一个(或几个)测试?
答案 0 :(得分:49)
使用dotnet版本1.0.0,您必须使用--filter选项:
您可以按DisplayName,FullyQualifiedName和Traits进行过滤。
例如:
dotnet test --filter "FullyQualifiedName=YourNamespace.TestClass1.Test1"
此外,允许这些运算符:=,!=和〜(包含)。
此处有更多信息:docs
答案 1 :(得分:12)
这个答案已经过时了......
这是特定于xunit: dotnet test -method <test name>
<test name>
是完整的方法名称(名称空间+类+方法名称)
如果您的测试是 Theory
,AFAIK,则无法指定要运行的理论。它将运行所有这些。
答案 2 :(得分:9)
由于此问题标有 xUnit ,因此dotnet xUnit CLI命令的命令如下:
synchronized