iT邦幫忙

鐵人檔案

第 12 屆 iThome 鐵人賽
回列表
Modern Web

循序漸進學習 Javascript 測試 系列

主要內容為學習 TESTING JAVASCRIPT with Kent C. Dodds 系列課程的心得與筆記。

鐵人鍊成 | 共 30 篇文章 | 32 人訂閱 訂閱系列文 RSS系列文
DAY 1

Day 1 開始之前,先理解為什麼要寫測試

前言 一直想要研究「如何寫好 JavaScript 測試」,但過了好一段時間卻遲遲還未開始,決定透過報名 2020 鐵人賽,迫使自己選定這個主題專注學習。對我來...

2020-09-16 ‧ 由 TWGD 分享
DAY 2

Day2 從測試基礎著手:動手做一個超簡易測試工具

有非常多的套件或是框架,可以輔助我們寫出高品質的測試。如何有效地善用這些工具,最好的方法就是去理解工具背後是怎麼運作的。而理解工具背後的運作原理,最好的方式之一...

2020-09-17 ‧ 由 TWGD 分享
DAY 3

Day3 靜態分析:用 ESLint 檢查語法錯誤

工程師的寫 code 日常中,拼錯字必定不可少(誤)。造成程式壞掉的各種原因裡,「錯字」跟「型別錯誤」都是很常見的原因之一。前面我們知道,寫測試的目的是在保護程...

2020-09-18 ‧ 由 TWGD 分享
DAY 4

Day4 靜態分析:自動排版就交給 Prettier 來做

程式碼排版是開發中很重要的小事,但如果每次刪減或補上空白、縮排等等都人工手動調整,那真的超級花時間,幸好,我們可以把這些瑣事交給工具來處理。另外,如果共同開發的...

2020-09-19 ‧ 由 TWGD 分享
DAY 5

Day5 靜態分析:讓靜態檢查自動化

前兩天的文章,我們分別使用 ESLint 跟 Prettier 作為靜態分析的工具。今天,我們將爲靜態分析做個收尾。 檢查專案的程式碼狀態 雖然可以在 VSCo...

2020-09-20 ‧ 由 TWGD 分享
DAY 6

Day6 理解 Mock 基礎概念:從 Monkey-patching 開始

Mock 是什麼? 單元測試時,假設我們要測試 A 單元,但這個單元需要依賴另一個單元(B 單元),例如:發送一個 request 到 API 。一方面,因為單...

2020-09-21 ‧ 由 TWGD 分享
DAY 7

Day7 理解 Mock 基礎概念:初探 mock function,確保 Functions 被正確呼叫

通常,在測試 JavaScript 跟 Mock 依賴的時候,我們需要確認 Functions 是不是有被正確地呼叫,例如:被呼叫了幾次?參數是否有正常傳遞進去...

2020-09-22 ‧ 由 TWGD 分享
DAY 8

Day8 理解 Mock 基礎概念:使用 jest.spyOn 復原被 mock 的 function

到目前為止,我們還是「手動」地記住及復原需要被 mock 的 function,例如: test('returns winner', () => {...

2020-09-23 ‧ 由 TWGD 分享
DAY 9

Day9 理解 Mock 基礎概念:mock 整個 module 及共用 mock module

用 jest.mock 來 mock 整個 module 今天 「理解 Mock 基礎概念」 即將告一個段落,目前為止我們 mock function 大致上滿...

2020-09-24 ‧ 由 TWGD 分享
DAY 10

Day10 實戰 Jest 配置:準備篇

Jest 是一個非常強大的測試框架,簡單易用又富有彈性。在前幾天的文章中,我們有用到 Jest 的部分,並不需要另設自訂的配置,因為 Jest 在簡單的使用情境...

2020-09-25 ‧ 由 TWGD 分享