我正在尝试使用gulp来自动化一些单元测试。我有以下的 gulp 文件。
var gulp = require('gulp'),
mocha = require('gulp-mocha');
gulp.task('unit', function() {
return gulp.src('test/unit/**/*.js')
.pipe(mocha({ reporter: 'spec' }))
.on('error', handleError);
});
gulp.task('watch', function() {
gulp.watch(['src/**/*.js', 'test/unit/**/*.js'], ['unit']);
});
gulp.task('test', ['unit', 'watch']);
当我运行 'gulp unit' 时,测试运行得很好。当我运行 'gulp test' 时,测试运行,并且似乎 'watch' 正常工作。如果我更改其中一个测试文件,测试会正确地重新运行,考虑到我在测试文件中所做的更改。
如果我更改源文件,则测试也会重新运行,但它们不会针对更新后的源文件运行。
我的想法是某种方式缓存了源文件,但我找不到任何其他人遇到过这个问题或找到解决方案。
感谢您帮助这个 Gulp/Node/Mocha 新手!
gulp.watch
,一切看起来都很好,然后我删除了一个源文件的内容,结果这些测试失败了。我错过了什么吗? - Josh C.