如何获得伊斯坦布尔与Sails.js 0.10.x?

我正在尝试使用Sails.js 0.10.x应用程序来获得伊斯坦布尔代码覆盖工具。

我看到http://blog.sergiocruz.me/unit-test-sailsjs-with-mocha-and-instanbul-for-code-coverage/,但是这个使用了0.9.x,并且在0.10.x之后执行了相同的步骤,由于对Grunt设置的更改而工作。

我试图调整它如下:

  • tasks/config/istanbulCoverage.js

     module.exports = function (grunt) { grunt.config.set('mocha_istanbul', { coverage: { src: 'test', options: { coverageFolder: 'coverage', mask: '**/*.spec.js', root: 'api/' } } }); grunt.loadNpmTasks('grunt-mocha-istanbul'); }; 
  • tasks/register/coverage.js

     module.exports = function (grunt) { grunt.registerTask('coverage', [ 'mocha_istanbul:coverage' ]); }; 

但是这只会导致/coverage目录被创build,但是没有创build文件。

没有错误消息,所有的testing都通过了,除了没有创build覆盖报告外,一切看起来都很好。

任何人都知道什么是错的? 如果有问题,我在Windows上,但稍后会尝试* nix虚拟机。

我更新了Sails v0.10.4。 我的configuration和你类似,除了我使用grunt.registerTask('test',...) 。 然后运行grunt test 。 它运行良好,包括覆盖报告。 试试吧。

我的情况与你类似,我发现这篇文章: 在Sails js中使用grunt-mocha-istanbul进行testing和代码覆盖 ,我遵循了这些步骤,最后运行良好。 也许你可以尝试。