Gulp4中的错误处理

Gulp4中的错误处理,gulp,gulp-watch,Gulp,Gulp Watch,我正在尝试编写一个简单的监视任务,该任务将监视我的测试文件,并在更改时编译它们并使用 我的手表任务: gulp.task('watch', function () { gulp.watch(['tests/**/[^_]*.ts'], gulp.series(['compile_tests', 'test'])); }) 以及测试任务: gulp.task('test', function(){ return gulp.src('tests/**/[^_]*.spec.js')

我正在尝试编写一个简单的监视任务,该任务将监视我的测试文件,并在更改时编译它们并使用

我的手表任务:

gulp.task('watch', function () {
    gulp.watch(['tests/**/[^_]*.ts'], gulp.series(['compile_tests', 'test']));
})
以及测试任务:

gulp.task('test', function(){
    return gulp.src('tests/**/[^_]*.spec.js')
        .pipe(
            jasmine().on('error', function(error){
                console.log(error);
                this.emit('end');
            })
        );
});
但如果测试的代码包含错误,比如
不是一个函数
或者其他什么,那么看着任务崩溃,我必须一次又一次地重新启动它。我的错误处理程序甚至没有被调用。那么,我如何以正确的方式处理错误呢

尝试用这种方法来处理错误

 gulp.task('test', function(){
        var j = jasmine({});
        j.on('error',function(e){
            console.log(e);
            j.end();
      });
      return gulp.src('tests/**/[^_]*.spec.js')
          .pipe(j);
    });