我正在尝试将 require.js/mocha/chai/sinon 与骨干应用程序一起使用来攀登学习曲线。当我运行这个测试时:
define([
"chai",
"sinon"
], function(chai, sinon){
var expect = chai.expect;
describe("Trying out the test libraries", function(){
describe("Chai", function(){
it("should be equal using 'expect'", function(){
expect(hello()).to.equal("Hello World");
});
});
describe("Sinon.JS", function(){
it("should report spy called", function(){
var helloSpy = sinon.spy(window, "hello");
expect(helloSpy.called).to.be.false;
hello();
expect(helloSpy.called).to.be.true;
hello.restore();
});
});
});
});
我得到TypeError: Object #<Object> has no method 'spy'
了定义 helloSpy 的那一行。为什么?请注意,第一个测试通过。
这是完整的项目:
https://github.com/ErikEvenson/spa-testing-study/tree/bcc5b71b3b6f8b24f7e8d01673b50682498ee1b2。
注意使用那个特定的提交。