2
我正在写使用ES6我的项目,我使用bubel + browserify编译我js文件,到目前为止,一切都很正常,测试与摩卡和browserify
在我一饮而尽文件我加用摩卡一个测试套件,像这样:
gulp.task('buildTestsIndividually', function(done) {
gutil.log('buildTestsIndividually started');
glob('./test/**/*.spec.js', function(err, files) {
gutil.log('files'+files.length);
if(err) done(err);
var tasks = files.map(function(entry) {
return browserify({ entries: [entry] })
.transform(babelify)
.bundle()
.pipe(source(entry))
.pipe(rename({
extname: '.bundle.js'
}))
.pipe(gulp.dest(bundledTestsFolder));
});
es.merge(tasks).on('end', done);
});
gutil.log('buildTestsIndividually completed');
});
所以我想单元测试我的一些代码,问题是,我的项目是使用一种称为froala插件,而且好像摩卡无法加载插件。
我不断收到此错误:
TypeError: this.$el.editable is not a function
at Array.map (native)
请注意,我的生产ENV是复制粘贴的上述和插件,没有任何问题运行那里。
任何帮助将非常感谢!
您正在导入您的应用程序,植根于您的spec文件。你是否100%确定你的spec文件在其依赖关系的某个地方有正确的'froala'?不相关,但你为什么要按照规范构建一个捆绑包? – loganfsmyth
@loganfsmyth谢谢,我发现问题并提出了一些解决方法,请参阅下面的答案 –
但是,为什么您需要将每个测试分别捆绑在一起?通常情况下,你会制作一个包含所有内容的包。 – loganfsmyth