gpt4 book ai didi

javascript - 按文件夹分组 Istanbul 尔代码覆盖率报告

转载 作者:行者123 更新时间:2023-12-05 00:23:59 26 4
gpt4 key购买 nike

我正在使用 istanbul 和 nyc 命令运行 NodeJs 的代码覆盖率报告。

我正在使用 mocha 进行单元测试

正如预期的那样,我得到了每个文件的报告,但我希望看到的是具有单个目录摘要的报告。让我更详细地解释一下我得到了什么以及我想看到什么

我所有的源文件都在一个文件夹中,我想查看该文件夹的摘要,而不是该文件夹中每个文件的完整列表

这是我的文件夹结构的样子

// This is the folder where all the sources are at 
src
// This is the folder where coverage is output
coverage
NodeJs
index.html
file1.js
file2.js
file3.js
// This is the folder where all tests are at
tests
test_file1.js
test_file2.js
test_file3.js

我的 .babelrc文件看起来像这样
{
"presets": ["es2015", "stage-2"],
"plugins": [
[
"istanbul",
{"exclude": ["**/tests/*.js"]}
]
]
}

我正在使用以下命令运行覆盖率测试
node ./node_modules/.bin/nyc --reporter=html \
--report-dir=./src/coverage/NodeJs \
./node_modules/mocha/bin/_mocha \
--require babel-core/register \
--ui bdd src/tests/test*.js

我所有的测试都运行良好,它们通过了,报告输出到 src/coverage/NodeJs/index.html文件按预期。在浏览器中,该报告如下所示:

Coverage report for all files

我想看到的是这样的,我可以看到整个文件夹的单个完整摘要,然后在必要时单击文件夹以深入其中,如下所示:

Coverage report for single folder

现在,如果我有超过 1 个被覆盖的文件夹,我可以得到那种效果。例如...如果我摆脱了 exclude在我的 .babelrc文件,然后有 2 个目录被覆盖( srcsrc/tests ),我得到了每个目录的摘要,如下所示

Coverage report with two folders

但问题是我不希望我的测试被覆盖......正如你所看到的,它弄乱了数字。我只想覆盖一个文件夹,并希望在 HTML 输出文件中看到一个文件夹摘要。

关于如何实现这一目标的任何建议? (如果我没有提供足够的信息,请告诉我)

最佳答案

您不能将输出重定向到同一个文件夹,即统一保存所有结果的文件夹吗?
This可能有帮助!
或者也许不是单独使用 Instabul,而是尝试 添加 纽约市也为:
我的 .babelrc 文件看起来像这样

{
"presets": ["es2015", "stage-2"],
"plugins": [
[
"istanbul","NYC",
{"exclude": ["**/tests/*.js"]}
]
]
}

关于javascript - 按文件夹分组 Istanbul 尔代码覆盖率报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44995252/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com