我想为代码覆盖生成Jacoco报告,因此我可以按照此处所述的https://www.linkedin.com/pulse/enabling-javascripttypescript-code-coverage-brett-jacobson?trk=portfolio_article-card_title包含在我的TFS构建中。
为此,我使用了几乎相同的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测试文件的限制还是我做错了什么?
答案 0 :(得分:0)
如果您使用的是HTML文件,Chutzpah将不会为您执行代码覆盖。如果你让Chutzpah为你生成HTML,它只支持它。