伊斯坦布尔覆盖与 mocha 测试用例仅显示规范文件(测试文件)的覆盖率报告
Posted
技术标签:
【中文标题】伊斯坦布尔覆盖与 mocha 测试用例仅显示规范文件(测试文件)的覆盖率报告【英文标题】:Istanbul coverage with mocha test cases only showing coverage report for spec files (test files) 【发布时间】:2018-12-21 17:52:02 【问题描述】:伊斯坦布尔覆盖率报告仅显示规范文件的覆盖率报告,即测试文件,而不是原始路由器和控制器文件。
它显示规范文件的覆盖率为 100%,路由器文件的覆盖率为 0%。
我使用的命令是 npm test:
"test": "NODE_ENV=development istanbul cover --include-all-sources --root ./server ./node_modules/.bin/_mocha -- --compilers js:babel-core/register --recursive './server/**/**/**/*-spec.js'"
以下是伊斯坦布尔报道的 html 文件截图
【问题讨论】:
【参考方案1】:我设法让它为我工作,也许你可以选择我的一些配置并将它们应用到你的环境中
我当前的包版本
"@babel/core": "^7.0.0",
"@babel/register": "^7.0.0",
"babel-plugin-istanbul": "^5.0.1",
"chai": "^4.1.2",
"mocha": "^5.2.0",
"nyc": "^13.0.1"
更新/创建您的 .babelrc
添加伊斯坦布尔插件
“插件”:[“伊斯坦布尔”]
为伊斯坦布尔创建一个配置文件:.nycrc
并粘贴此配置
"要求": ["@babel/register"], "排除": ["**/*.test,spec.js"], “全部”:是的, “仪器”:假
更多选项可以查看官方nyc repository
-
然后运行测试
./node_modules/.bin/nyc mocha **/*.test,spec.js
或
npx nyc mocha **/*.test,spec.js
【讨论】:
以上是关于伊斯坦布尔覆盖与 mocha 测试用例仅显示规范文件(测试文件)的覆盖率报告的主要内容,如果未能解决你的问题,请参考以下文章