2016-12-11 135 views

回答

4

模擬意味着用另一個替換一個實例。用它來替代你自己的進口模塊的實現。

jest.mock('yourModule',() => {test:()=> 'test'})

其背後的主要思想,是在單元測試來隔離你的代碼,這樣你只測試一個模塊,沒有你的應用程序或外部代碼的其他部分的影響。這有一大堆優勢。首先,如果一個模塊中的代碼中斷,那麼只有這個部分的測試會失敗,而不是隻導入該模塊的部分的全部測試。其次,您可以簡化測試本身,因爲您不需要啓動一個返回特定數據的服務器,這也會降低您的代碼速度。

解鎖功能有automock功能的原因,這是過去的默認功能。 Automocking將用默認模擬替換所有導入的模塊。因爲這對於某些模塊是有意義的,但是例如lodash不需要,那麼你可以解開它們的嘲諷。因此,如果需要,automock開啓以獲取原始實現,則大多需要解除鎖定。

+0

感謝哥們,我明白了。 –

相關問題