我正在尝试以下代码...
// testable_scripts.js
function addition(){
return 1 + 1;
}
// spec.js
describe('Addition', function(){
it('Adds two numbers together', function(){
expect(addition()).toBe(2);
});
});
上面的代码一切正常,但是当我将加法函数放入模块中并返回时,出现“ ReferenceError:TestModule未定义”。
var TestModule = (function(){
var addition = function(){
return 1 + 1;
};
return {
call_addition: function(){
addition();
}
};
})();
// spec.js
describe('Addition', function(){
it('Adds two numbers together', function(){
expect(TestModule.call_addition()).toBe(2);
});
});
任何建议表示赞赏。
最佳答案
在您的代码中,TestModule必须是一个函数才能返回某些内容:
尝试
var TestModule = function(){
var addition = function(){
return 1 + 1;
};
return {
call_addition: function(){
return addition();
}
};
};
// spec.js
describe('Addition', function(){
it('Adds two numbers together', function(){
expect(TestModule().call_addition()).toBe(2);
});
});
将上面的代码粘贴到
http://tryjasmine.com/
关于javascript - Jasmine 测试说模块未定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36103683/