angular-cli with VSTS-如何以xml格式导出单元测试结果?

use*_*903 6 karma-jasmine angular-cli azure-pipelines

我有一个用angular-cli开发的应用程序.作为构建过程的一部分,我们运行单元测试并在VSTS中显示结果.

如何以xml格式生成单元测试结果,以便我可以将其与VSTS集成?

提前致谢.

Pat*_*SFT 5

假设integrate it with VSTS 意味着使用发布测试结果任务将单元测试结果发布到 VSTS。你可以使用karma-junit-reporter

\n\n
\n

karma-junit-reporter 是 Karma 的一个插件,它允许我们以 XML 格式获取测试输出,以便 VSTS 可以很好地为我们呈现它。

\n
\n\n

默认情况下,VSTS 能够处理 JUnit 格式的 JavaScript 单元测试。Karma 有一个可以安装的 JUnit 报告器:

\n\n
npm install karma-junit-reporter --save-dev\n
Run Code Online (Sandbox Code Playgroud)\n\n

可以将其添加到 Karma 配置文件中。现在您可以使用该标志运行测试--reporters=junit,测试运行将生成一个名为的文件TESTS-browser_(platform).xml.

\n\n

例如,在 Windows 10 上本地运行会创建TESTS-Chrome_54.0.2840_(Windows_10_0.0.0).xml. 如果打开该文件,\xe2\x80\x99 将看到 XML,其中定义了各种测试用例、它们运行的​​时间,甚至是保存控制台输出的结构。

\n\n

另外建议你使用PhantomJS 一个所谓的 Headless Browser 作为您的浏览器。无头浏览器是一种仅在后台运行的浏览器,您只能通过代码或终端与之交互。

\n\n

最后使用ng test命令执行测试并发布测试结果:

\n\n

在此输入图像描述

\n\n

有关更多详细信息,您可以查看以下精彩博客:

\n\n\n