纽约市报道显示不正确的行号
nyc coverage shows incorrect line numbers
我的小组正在使用以下前端堆栈构建应用程序:
- VueJS
- Webpack 2.2
- AvaJS(用于单元测试)
- nyc(伊斯坦布尔)测试范围
我们从 vue-cli
开始为我们的项目创建一个 Webpack 模板。在大多数情况下,一切都进行得很顺利。我们可以使用 Ava 对单独的 .vue 组件文件进行单元测试 vue-node 但是通过生成的测试覆盖率报告存在问题纽约。下面是我们的 package.json 文件的片段,其中定义了相关的 nyc 和 ava 部分:
"nyc": {
"exclude": [
"build",
"config",
"static",
"tests"
],
"extension": [
".js",
".vue"
]
},
"ava": {
"require": [
"./tests/unit/helpers/setup.js",
"ignore-styles"
]
},
所有测试都成功通过。 nyc
报告显示以下内容:
问题是 Uncovered Lines 下列出的 #s 行不存在。 .vue 文件只有 402 行长,所以我不知道 nyc 报告中的这些行#s 来自哪里。
如有任何帮助,我们将不胜感激,并提前致谢。
我遇到了同样的问题,您需要安装 babel-plugin-istanbul
以使用 Istanbul 覆盖检测您的代码。该插件负责为您的代码获取正确的 sourceMap
。所以你需要从 nyc
.
禁用 instrument 和 sourceMap
npm install --save-dev babel-plugin-istanbul
在 .babelrc
文件(通常位于项目的根文件夹中)中添加以下内容,使其仅供测试环境使用:
{
"env": {
"test": {
"plugins": [ "istanbul" ]
}
}
}
然后从 nyc
禁用仪器和 sourceMap
。 babel-plugin-istanbul
会处理的。并将 "require": "nyc"
替换为 "require": "babel-register"
.
"nyc": {
"exclude": [
"build",
"config",
"static",
"tests"
],
"extension": [
".js",
".vue"
],
"require": [
"./tests/unit/helpers/setup.js",
"ignore-styles",
"babel-register"
],
"sourceMap": false,
"instrument": false
},
现在您应该可以通过 nyc
获得报道。
NODE_ENV=test nyc ava
来源:
我的小组正在使用以下前端堆栈构建应用程序:
- VueJS
- Webpack 2.2
- AvaJS(用于单元测试)
- nyc(伊斯坦布尔)测试范围
我们从 vue-cli
开始为我们的项目创建一个 Webpack 模板。在大多数情况下,一切都进行得很顺利。我们可以使用 Ava 对单独的 .vue 组件文件进行单元测试 vue-node 但是通过生成的测试覆盖率报告存在问题纽约。下面是我们的 package.json 文件的片段,其中定义了相关的 nyc 和 ava 部分:
"nyc": {
"exclude": [
"build",
"config",
"static",
"tests"
],
"extension": [
".js",
".vue"
]
},
"ava": {
"require": [
"./tests/unit/helpers/setup.js",
"ignore-styles"
]
},
所有测试都成功通过。 nyc
报告显示以下内容:
问题是 Uncovered Lines 下列出的 #s 行不存在。 .vue 文件只有 402 行长,所以我不知道 nyc 报告中的这些行#s 来自哪里。
如有任何帮助,我们将不胜感激,并提前致谢。
我遇到了同样的问题,您需要安装 babel-plugin-istanbul
以使用 Istanbul 覆盖检测您的代码。该插件负责为您的代码获取正确的 sourceMap
。所以你需要从 nyc
.
sourceMap
npm install --save-dev babel-plugin-istanbul
在 .babelrc
文件(通常位于项目的根文件夹中)中添加以下内容,使其仅供测试环境使用:
{
"env": {
"test": {
"plugins": [ "istanbul" ]
}
}
}
然后从 nyc
禁用仪器和 sourceMap
。 babel-plugin-istanbul
会处理的。并将 "require": "nyc"
替换为 "require": "babel-register"
.
"nyc": {
"exclude": [
"build",
"config",
"static",
"tests"
],
"extension": [
".js",
".vue"
],
"require": [
"./tests/unit/helpers/setup.js",
"ignore-styles",
"babel-register"
],
"sourceMap": false,
"instrument": false
},
现在您应该可以通过 nyc
获得报道。
NODE_ENV=test nyc ava
来源: