我如何在jenkins中使用xunit(.net core)测试结果?

时间:2018-02-28 09:38:06

标签: c# jenkins .net-core xunit

我有一个asp.net核心应用程序,它有一些用XUnit编写的测试。我如何使用像詹金斯这样的工具来使用测试结果?

1 个答案:

答案 0 :(得分:4)

我在这个问题上挣扎,所以我决定根据自己的经验分享我的答案。

为了使用测试结果,我们需要将它们输出到XML文件中,以后解析器可以使用它们。 xml需要采用解析器知道如何读取的格式。

默认情况下,运行dotnet test时,会将测试结果输出到控制台。为了将这些结果保存到文件中,我们应该使用" - logger" PARAM。记录器参数可以接受记录器,而不是将测试结果解析为所需的格式。为了将它们解析为可以由jenkins等工具使用的xunit xml测试文件,我们需要使用名为XunitXml.TestLogger的外部记录器。现在我们可以运行以下命令:

dotnet test --test-adapter-path:. --logger:xunit

将结果导出到您拥有的每个项目中的 TestResults 文件夹中。 现在我们可以通过任何工具使用这些文件,比如jenkins来解析这些文件。 jenkins有一个名为Xunit的插件(原创性),具体来说就是这样。它甚至可以让你设置一些错误阈值等。

更新:感谢jenkins,我发现有一些插件允许你将点TRX结果(dotnet知道本地导出)转换为XUnit格式。这可能会简化它并为您节省额外的依赖性。 MSTest,如果其中之一 - https://wiki.jenkins.io/display/JENKINS/MSTest+Plugin