3
如何使用jest框架測試void javascript函數(不返回任何東西的函數)?你能否提供一個相同的例子?如何使用jest測試無效的javascript函數?
如何使用jest框架測試void javascript函數(不返回任何東西的函數)?你能否提供一個相同的例子?如何使用jest測試無效的javascript函數?
測試void函數的最佳方法是嘲笑其依賴關係的行爲。
// module being tested
import sideEffect from 'some-module';
export default function() {
sideEffect();
}
使用文件嘲弄和功能的期望,你可以斷言,函數調用的其他模塊如預期:
import hasSideEffect from './hasSideEffect';
import sideEffect from 'some-module';
jest.mock('some-module');
test('calls sideEffect',() => {
hasSideEffect();
expect(sideEffect).toHaveBeenCalledTimes(1);
expect(sideEffect).toHaveBeenCalledWith();
});
最好的,你Google的標題 –
測試返回什麼內容?他們返回'undefined'? –
不返回值的函數必須有副作用或無意義;副作用,例如改變傳遞給它的對象的狀態,或者在環境中做某事。因此,如果功能不是毫無意義的,請檢查其副作用。如果你舉了實際的例子,那麼幫助你會容易得多。 –