如何使用dotnet测试运行特定测试?

时间:2016-06-10 15:45:15

标签: xunit.net .net-core .net-core-rc2 xunit2

我在.NET Core项目中有一个大型测试套件。我可以使用Test Explorer窗口选择要运行的几个测试。

我还可以在dotnet test的命令行上运行整个测试套件。有没有办法在命令行上只运行一个(或几个)测试?

3 个答案:

答案 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