javascript - Full Gulp Istanbul 尔报道报告

标签 javascript unit-testing mocha.js gulp istanbul

我正在使用 gulp-istanbul 通过 Gulp 生成 JavaScript 单元测试覆盖率报告。有没有一种方法可以配置 Istanbul 以生成我的 gulp 流中所有 JS 文件的完整覆盖率报告,而不仅仅是测试用例所触及的文件。

我正在做一个有很多 JS 的项目,但没有单元测试,我们正在努力增加测试覆盖率。我想要一份覆盖率报告,它首先显示我们大多数文件的覆盖率为 0%,但随着时间的推移,覆盖率会逐渐增加。

gulp.task( 'test', function () {
    gulp.src( [ my source glob ] )
        .pipe( istanbul() )
        .on( 'end', function () {
            gulp.src( [ my test spec glob ] )
                .pipe( mocha( {
                    reporter: 'spec'
                } ) )
                .pipe( istanbul.writeReports(
                    [ output location ]
                ) );
        } );
} );

最佳答案

现在实际上要简单得多,您只需将 include Untested 添加到您的 istanbul() 调用即可。

gulp.task('test', function () {
    return gulp.src('./assets/**/js/*.js')
      // Right there
      .pipe(istanbul({includeUntested: true}))
      .on('finish', function () {
        gulp.src('./assets/js/test/test.js')
          .pipe(mocha({reporter: 'spec'}))
          .pipe(istanbul.writeReports({
            dir: './assets/unit-test-coverage',
            reporters: [ 'lcov' ],
            reportOpts: { dir: './assets/unit-test-coverage'}
          }));
      });
  });

来源:https://github.com/SBoudrias/gulp-istanbul#includeuntested

关于javascript - Full Gulp Istanbul 尔报道报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22702578/

相关文章:

javascript - 合并 Node.js 流

javascript - 获取 Angular 4 中随机数的单元测试

javascript - 为什么文本在使用 toEqual 时不匹配 Angular ?

javascript - 如何测试传递需要自身的nodejs模块

javascript - 语法错误 : missing ) after argument list in cart. js

Javascript Canvas : Collision against enemies not entirely working when rotating player

javascript - ajax成功后如何在模态上显示隐藏按钮?

c# - .net 核心中的单元测试 Url.Link

javascript - Cypress :为数组的每个元素创建一个 it 测试

unit-testing - 使用 Mocha 和 Chai 测试 Angular