我有一个以dotnet核心编写的测试项目。这需要以XML或HTML格式发布结果。有没有一种方法可以使用同一命令将结果发布到特定目录?--result-directory对我不起作用

最佳答案

您可以通过执行dotnet test查看所有dotnet test --help选项。选项之一是-l, --logger,它提供了一些重要信息:

Specify a logger for test results.
Examples:
Log in trx format using a unqiue file name: --logger trx
Log in trx format using the specified file name: --logger "trx;LogFileName=<TestResults.trx>"
More info on logger arguments support:https://aka.ms/vstest-report

该支持链接https://aka.ms/vstest-report,具有完整的信息。

因此,要回答您的特定问题,您可以说
dotnet test -l:trx;LogFileName=C:\temp\TestOutput.xml
要将结果发布到特定目录。

另一个选择是在test.csproj中设置MSBuild属性:
<PropertyGroup>
  <VSTestLogger>trx</VSTestLogger>
  <VSTestResultsDirectory>C:\temp</VSTestResultsDirectory>
</PropertyGroup>

告诉记录器将文件放在C:\temp目录中。

09-30 15:10