使用 Html 测试文件时的代码覆盖率
Code coverage when using Html test file
我想生成代码覆盖率的 Jacoco 报告,以便我可以按照此处所述包含在我的 TFS 构建中 https://www.linkedin.com/pulse/enabling-javascripttypescript-code-coverage-brett-jacobson?trk=portfolio_article-card_title。
为此,我使用了几乎相同的 chutzpah.json
文件:
{
"Compile": {
"Mode": "External",
"Extensions": [ ".ts" ],
"ExtensionsWithNoOutput": [ ".d.ts" ]
},
"CodeCoverageExecutionMode": "Always",
"EnableCodeCoverage": "True",
"CodeCoverageExcludes": [
"node_modules/*"
],
"TestFileTimeout": 5000,
"Tests": [
{
"Path": "test\unittests\index.html"
}
],
"Transforms": [
{
"Name": "jacoco",
"Path": "..\TestResults\ChutzpahJacoco.xml"
},
{
"Name": "lcov",
"Path": "..\TestResults\ChutzpahJS.lcov"
},
{
"Name": "coveragehtml",
"Path": "..\TestResults\ChutzpahJS.html"
}
]
}
在我的 index.html
文件中,我有所有的单元测试。给出这个配置,如果我 运行
chutzpah.console.exe chutzpah.json
命令,我得到所有全部测试和失败测试的结果。但是没有生成 3 个转换报告。
但是,如果我将测试设置更改为使用 Includes": [ "*Tests.ts" ]
而不是 HTML 文件的路径并添加 references
,我将生成报告。
这是 Html 测试文件的限制还是我做错了什么?
如果您使用 HTML 文件,Chutzpah 将不会为您做代码覆盖。它仅在您让 Chutzpah 为您生成 HTML 时才支持它。
我想生成代码覆盖率的 Jacoco 报告,以便我可以按照此处所述包含在我的 TFS 构建中 https://www.linkedin.com/pulse/enabling-javascripttypescript-code-coverage-brett-jacobson?trk=portfolio_article-card_title。
为此,我使用了几乎相同的 chutzpah.json
文件:
{
"Compile": {
"Mode": "External",
"Extensions": [ ".ts" ],
"ExtensionsWithNoOutput": [ ".d.ts" ]
},
"CodeCoverageExecutionMode": "Always",
"EnableCodeCoverage": "True",
"CodeCoverageExcludes": [
"node_modules/*"
],
"TestFileTimeout": 5000,
"Tests": [
{
"Path": "test\unittests\index.html"
}
],
"Transforms": [
{
"Name": "jacoco",
"Path": "..\TestResults\ChutzpahJacoco.xml"
},
{
"Name": "lcov",
"Path": "..\TestResults\ChutzpahJS.lcov"
},
{
"Name": "coveragehtml",
"Path": "..\TestResults\ChutzpahJS.html"
}
]
}
在我的 index.html
文件中,我有所有的单元测试。给出这个配置,如果我 运行
chutzpah.console.exe chutzpah.json
命令,我得到所有全部测试和失败测试的结果。但是没有生成 3 个转换报告。
但是,如果我将测试设置更改为使用 Includes": [ "*Tests.ts" ]
而不是 HTML 文件的路径并添加 references
,我将生成报告。
这是 Html 测试文件的限制还是我做错了什么?
如果您使用 HTML 文件,Chutzpah 将不会为您做代码覆盖。它仅在您让 Chutzpah 为您生成 HTML 时才支持它。