在 Jasmine 中,模擬 ES6 模組導入非常簡單。然而,在 Jest 中,該過程可能更具挑戰性,尤其是在處理使用預設導出的模組時。本文探討如何使用簡單的 import * hack 在 Jest 中模擬 ES6 模組導入。
傳統上,模擬導入需要用 require 替換導入,並在測試中聲明它們。這種方法可能是不可取的。
相反,我們可以利用 import * 直接改變模組的導出,從而允許我們模擬所需的函數或預設導出。對於命名導出:
同樣,對於預設導出:
雖然此方法提供了模擬ES6 導入的解決方法,但必須注意它涉及更改導入的模組,這可能會在測試執行中引入副作用和潛在問題。因此,建議首選使用 Jest 的原生模擬方法,例如 jest.spyOn 或 jest.mock。
以上是如何在 Jest 中使用 import * 模擬 ES6 模組導入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!