Mocha中的构造函数无法识别

时间:2016-01-08 21:14:37

标签: javascript node.js unit-testing mocha

我完全没有想到这里发生了什么,所以希望有人可以提供帮助。

这是我正在测试的脚本;

function MyFunc() {

    this.test = 'hello world';

};

module.exports = MyFunc;

这是我的测试;

var expect = require('chai').expect;
var MyFunc = require('../myfunc.js');

describe('MyFunc', function() {

    it('test should equal to Hello World', function() {
        var subject = new MyFunc;
        expect(subject.test).to.eql('hello world');
    });

})

当我运行测试时,它失败并且它给了我这个消息;

TypeError: MyFunc is not a function

我简化了代码只是为了解决我的问题,但我尝试了几种变化无济于事。我花了很多时间寻找类似的问题而没有快乐(通常这意味着我正在做的事情是愚蠢的。让我们希望。)

我以非常类似的方式测试我的Angular代码,完全没有任何问题。我很难过!

感谢您花时间阅读,

安东尼

1 个答案:

答案 0 :(得分:1)

更改var subject = new MyFunc ===> var subject = new MyFunc()

describe('MyFunc', function() {

    it('test should equal to Hello World', function() {
        var subject = new MyFunc();
        expect(subject.test).to.eql('hello world');
    });

})