Vue 2.X 版本若要結合 TypeScript 的模式導入單元測試,還須了解的一個環節是如何模擬對外呼叫的 API。這邊是筆記下如何用 axios-mock-adapter 來模擬 Axios ,並測試其回傳值是否 OK。
程式碼解說
Index.spec.ts
Mock Axios 模組
公用區塊,可以按照需求引入
1 2 3 4 |
import axios from 'axios' import MockAdapter from 'axios-mock-adapter' const mockAxios = new MockAdapter(axios) export { axios, mockAxios } |
原碼 Github:Demo
注意 Jest 會快取你的測試結果
必要時,請執行 npx jest –clearCache 來清除結果
參考資料
1. 使用 Mock 自己產生假資料
2. Jest for Vue 發送 API 用 axios
3. Jest 断言归纳
4. How to clear Jest cache?