茉莉花单元测试失败了吗?

时间:2017-07-25 21:18:37

标签: javascript jasmine

我已经安装了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'进行硬编码,我没有收到错误,测试按预期传递。

我错过了什么?

1 个答案:

答案 0 :(得分:1)

expect的错误位置括号 - 你走了:

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

编辑:为清楚起见 - 您收到的错误是因为您将toEqual链接到函数调用而不是封装expect