假設我們想要測試一個特定的函數是由另一個使用Sinon的函數調用的。如何使用Sinon窺探導入的函數?
fancyModule.js
export const fancyFunc =() => {
console.log('fancyFunc')
}
export default const fancyDefault =() => {
console.log('fancyDefault')
fancyFunc()
}
fancyModule.test.js
import sinon from 'sinon'
import fancyDefault, { fancyFunc } from '../fancyModule'
describe('fancyModule',() => {
it('calls fancyFunc',() => {
const spy = sinon.spy(fancyFunc)
fancyDefault()
expect(spy.called).to.be.true
})
})
當我運行這個測試的實際值始終假。另外,原函數fancyFunc()
被調用(輸出fancyFunc)而不是被模擬。
請顯示「fancyModule.js」的'export'語句。 –
謝謝,我已經通過出口更新了我的問題。 – Marc