我正在Meteor上开始一个项目,我正在尝试使用实习生js进行测试。 所以,我有一个mongoDB集合,我正在尝试对它进行测试。
我在要测试的文件上有这个声明
this.Teams = new Meteor.Collection('teams');
我在这一行得到了这个错误:
ReferenceError : Meteor is not defined
有没有办法解决这个问题?
此致
答案 0 :(得分:0)
不知怎的,我设法用TheIntern.js测试Meteor应用程序。
虽然这符合我的需要。但我认为它可能会引导某人走向正确的方向,我正在分享我为解决这个问题所做的工作。
有一个execute
函数允许我们运行JS代码,我们可以访问浏览器window
对象,因此也可以访问Meteor
。
想要了解有关execute
的更多信息这是test suite
查找功能测试
define(function (require) {
var registerSuite = require('intern!object');
var assert = require('intern/chai!assert');
registerSuite({
name: 'index',
'greeting form': function () {
var rem = this.remote;
return this.remote
.get(require.toUrl('localhost:3000'))
.setFindTimeout(5000)
.execute(function() {
console.log("browser window object", window)
return Products.find({}).fetch().length
})
.then(function (text) {
console.log(text)
assert.strictEqual(text, 2,
'Yes I can access Meteor and its Collections');
});
}
});
});
要了解更多信息,这是我的gist
注意:我仍然处于这个解决方案的早期阶段。我不知道我是否可以用这个来做复杂的测试。但我对此非常有信心。