sinon spy 检查函数是否被调用错误
sinon spy check if function has been called error
我正在尝试检查在我的测试中是否调用了一个函数。我在尝试执行此操作时收到错误 TypeError: Cannot read property 'match' of undefined
。我已将我的代码设置为在我的函数上使用 sinon.spy()
,然后基于此检查 callCount
。 getMarketLabel
将 总是 return 一个字符串。下面是我的代码:
beforeEach(() => {
marketLabelSpy = sinon.spy(getMarketLabel());
}); //please note this is in a describe block but didnt feel it was relevant to post it. marketLabelSpy is pre-defined.
it('should be called', () => {
expect(marketLabelSpy).to.have.callCount(1);
})
在您的代码中,您正在调用 getMarketLabel
函数,函数调用的结果(它是一个字符串)将用于设置您的间谍。这不符合您的预期。
要在函数上使用 sinon 间谍,只需传递对该函数的引用即可:
beforeEach(() => {
marketLabelSpy = sinon.spy(getMarketLabel);
});
我正在尝试检查在我的测试中是否调用了一个函数。我在尝试执行此操作时收到错误 TypeError: Cannot read property 'match' of undefined
。我已将我的代码设置为在我的函数上使用 sinon.spy()
,然后基于此检查 callCount
。 getMarketLabel
将 总是 return 一个字符串。下面是我的代码:
beforeEach(() => {
marketLabelSpy = sinon.spy(getMarketLabel());
}); //please note this is in a describe block but didnt feel it was relevant to post it. marketLabelSpy is pre-defined.
it('should be called', () => {
expect(marketLabelSpy).to.have.callCount(1);
})
在您的代码中,您正在调用 getMarketLabel
函数,函数调用的结果(它是一个字符串)将用于设置您的间谍。这不符合您的预期。
要在函数上使用 sinon 间谍,只需传递对该函数的引用即可:
beforeEach(() => {
marketLabelSpy = sinon.spy(getMarketLabel);
});