如何使用以下mocha.opts配置配置gulp-mocha?

时间:2017-06-22 22:53:57

标签: mocha e2e-testing gulp-mocha

我正在尝试使用之前存在的配置运行mocha。     moch.opts有以下几行。

--timeout 999999
--ui tdd
--full-trace
--recursive
--compilers js:babel-register

如何在这里添加它们:

    gulp.task('test', function() {
        return gulp.src('sampleTest/*.js', { read: false })
            .pipe(mocha());
    });

3 个答案:

答案 0 :(得分:0)

我相信您可以在传递给gulp-mocha的选项对象上创建属性,也可以让它读取选项文件。在我的情况下,我不想复制--recursive--require test/_init.js之类的内容,但我确实想要覆盖记者,所以我使用下面显示的代码:

gulp.task('test', ['compile'], function() {
    return gulp.src([], { read: false })
        .pipe(mocha({
            opts: 'test/mocha.opts',
            reporter: 'min'
        }))
        .on('error', gutil.log);
});

您可能希望对其进行修改,以便它不会采用测试文件的默认路径(例如test/*.js),但在我的简单情况下,我甚至不需要传递路径摩卡。我只是使用gulp来触发它(好像我在命令行上运行了类似mocha --opts test/mocha.opts --reporter min

答案 1 :(得分:0)

选项直接 传递给 mocha 二进制文件,因此您可以以 camelCased 形式使用其任何命令行选项。 this is the document link

gulp.task('test', ['compile'], function() {
return gulp.src([], { read: false })
    .pipe(mocha({
        timeout: 999999,
        fullTrace: true,
        reporter: 'min'
    }))
    .on('error', gutil.log);
});

答案 2 :(得分:-2)

在mocha调用

之后添加setTimeout调用
.pipe(mocha(),setTimeout(function() {

}, 999999))