2017-07-25 173 views
0

我已经安装了Jasmine节点模块,并在test.js中设置了相应的规格文件testSpec.js的测试功能。茉莉花单元测试失败?

test.js:

var Test = function() { 
    var testFunction = function() { 
     return 'test worked'; 
    } 
    return{ 
     testFunction:testFunction 
    } 
} 

module.exports = Test(); 

testSpec.js:

var Test = require('../src/js/test'); 

describe("Test Function", function() { 
    it("returns 'test worked'", function() { 
     expect(Test.testFunction().toEqual('test worked')); 
    }); 
}); 

当我跑我收到以下错误测试:

Message: 
    TypeError: Test.testFunction(...).toEqual is not a function 
Stack: 
    TypeError: Test.testFunction(...).toEqual is not a function 

硬编码的结果'test worked' ,我没有收到任何错误,并且测试通过了预期。

我错过了什么?

+0

@ T4rk1n看到编辑,我加入了那些当我遇到问题时。移除时我收到相同的错误。 –

+0

它不等于它等于 – T4rk1n

+0

@ T4rk1n无论匹配器如何,我都会得到相同的错误。 –

回答

1

括号放错了地方的expect - 在这里你去:

describe("Test Function", function() { 
    it("returns 'test worked'", function() { 
     expect(Test.testFunction()).toEqual('test worked'); 
    }); 
}); 

编辑:为清楚 - 您收到的错误是因为你链接toEqual了你的函数调用,而不是封装expect的。

+0

是的,我现在绝对看到,如此明显。 –