现在SpecFlow 3.0已经发布,我们可以使用SpecFlow与.NET Core一起使用。.NET Core的CLI工具是dotnet,如果您使用MSTest(vstest),则可以通过以下方式运行测试:
dotnet test
如果测试属于特定项目,您可以按如下方式指定该项目。
dotnet test TestProject
其中TestProject是项目名称。如果想要的话,你可以跳过项目名称,但是指定项目名称会让dotnet只查找该项目。如果想要列出项目中所有的测试,可以使用-t
标志:
dotnet test TestProject -t
为了只运行特定的测试,您可以使用 --filter
标志:
dotnet test TestProject --filter ShouldBeSuccess_1
其中ShouldBeSuccess_1是测试的名称。--filter
后面的参数是一个表达式,而不一定是测试的名称。如果您有一个名为ShouldBeSuccess_12的测试,它也会被运行。您可以在此处查看--filter
的规则。
要仅运行特定类别中的测试,可以使用TestCategory
:
dotnet test TestProject --filter TestCategory=ci
其中 ci 是类别名称。要将测试添加到类别中,您可以使用标签。
要创建结果文件,您必须使用 --logger
标志:
dotnet test TestProject --logger trx
这里用于创建一个 trx 结果文件。