[英]Stub/spy on singleton with Sinon
我需要编写一些单元测试,以检查对单例函数的调用。 基本上,如果我有这个:
const somePackage = require('some-package');
并用以下方式调用它:
somePackage();
我希望能够监视/单打此调用以证明它已被调用。 我知道如何使用使用sinon.stub(somePackage, 'someMethod')
方法来做到这sinon.stub(somePackage, 'someMethod')
但不仅限于单例。
现在,我实际上必须通过执行代码来编写集成测试,而实际上我想编写单元测试并显示这些外部方法已被调用。 我相信这些程序包的开发人员会对功能进行自己的测试。
您可以使用sinon监视任何功能:
const spy = sinon.spy(myFunc);
存根您可以使用一个功能proxyquire
的描述,在此问题 :
const proxyquire = require('proxyquire')
const sinon = require('sinon')
const sum = sinon.stub()
const ModuleWithDependency = proxyquire('module', {
'sum': sum
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.