[英]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.