我是mocha的新手,我正在尝试实施一项新测试。我发现我的end
方法的回调永远不会被调用
it('should allow valid urls', function(){
var myUrl = "http://localhost:8080/test";
api.get(myUrl)
.end(function(err, res) {
console.log('THIS IS THE END, MY FRIEND');
});
});
有谁知道为什么?我也尝试过使用回调expect
,它也永远不会被调用。
答案 0 :(得分:1)
事实证明mocha
对函数参数进行了分析,并且我忘了在我的mocha回调中添加一个参数 - 即使它在我的函数或任何可见代码中都没有被引用过!
所以解决方案只是将一个变量done
作为函数参数添加到我的it
函数中,并且它工作正常,即使它在直接上下文中没有明显使用;-)
it('should allow valid urls', function(done){
...
编辑:请注意{@ 1}}应该在我的回调中使用,正如@ oligofren所提到的那样,但我还没有达到这一点,并且惊讶地看到回调本身没有触发。