我正在为 Meteor 中的单元测试而苦苦挣扎。我想使用速度,茉莉包,但我一定做错了什么。测试似乎不起作用,因为测试找不到要测试的代码。测试项目在 github 上可用。
单元测试在这里: https://github.com/robvanpamel/coderepository/blob/master/meteor/sandwich-app/tests/jasmine/server/integration/spec/SandwichServiceSpec.js 当我取消注释单元中创建的 SandwichService测试,测试有效,这是正常的。
我没有在流星的其他地方进行任何配置,我认为这就是问题所在。您是否必须在指定源代码的位置放置一个 package.js 文件?Jasmine 怎么知道它在哪里可以找到我要测试的 SandwichService?这也是我得到的错误。“ReferenceError: SandwichesService 未定义”
编辑
我能够解决它并更新了 GitHub 中的代码存储库。关键是不要使用 Javascript 原型。所以下面将不起作用
function SandwichesService(){};
SandwichesService.prototype.listSandwiches = function() {
// do stuff here
}
虽然下面的代码确实有效
SandwichService = {
listSandwiches: function(){
// do stuff here
}
};
我真的不明白为什么?有人可以告诉我吗?
亲切的问候和感谢!抢