2

问题

我在javascript中有以下文件:

function myLocalHouse() {

this.buyHouse(money, date) {
   //code I want to test with mocha
};


};

我想测试这个buyHouse方法。

我试过的

我尝试了世界上最简单的事情,但尽我所能尝试它不起作用

var myLocalHouseInstance = require('/myLocalHouse.js');

suite('houses suite', function() {
    test('test that buy House works correctly', function() {
       var something = myLocalHouseInstance.buyHouse(100, '17/08/2013');
    });
});

不幸的是,这不起作用,当我执行mocha它时说方法buyHouse未定义。

我执行测试:

mocha -u tdd

谢谢

4

1 回答 1

2

您需要在 myLocalHouse.js 中导出您的函数。尝试这样的事情:

exports.myLocalHouse = function() {
    this.buyHouse = function(money, date) {
    }
}

或者

function myLocalHouse() {
    this.buyHouse = function(money, date) {
    }
}

exports.myLocalHouse = myLocalHouse;

然后在你的测试中

var myLocalHouse = require('./myLocalHouse.js').myLocalHouse;

suite('houses suite', function() {
    test('test that buy House works correctly', function() {
        var myLocalHouseInstance = new myLocalHouse();
        var something = myLocalHouseInstance.buyHouse(100, '17/08/2013');
    });
});
于 2013-05-31T08:41:40.903 回答