错误:存根无法调用arg,因为它尚未被调用

时间:2018-06-07 15:13:34

标签: node.js mocha sinon

我在一次测试中遇到这个错误,我不明白它在Sinon的背景下意味着什么。

我知道我的存根有问题,但是"调用"对于诗乃?

由于

1 个答案:

答案 0 :(得分:0)

由于您没有提供任何代码,而且这也发生在我身上,我将回答在我的上下文中有效的内容。

我们使用以下代码来测试控制器中的回调:

serviceStub
    .withArgs(1, 2, sinon.match.func)
    .callArgWith(2, null);

// Call the controller for testing
controller(1, 2);

这里的问题是 callArgWith 函数。该函数用于调用已经定义的参数(这里不是这种情况,因为控制器仅在此定义之后调用)。

为了解决这个问题,要调用的正确函数是 callsArgWith(带有 s),它只在定义参数后调用。

--

同样,我不确定这是否是您遇到的问题,但它会引发相同的错误,并且可能会帮助其他遇到相同问题的人。