iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 13
1
Software Development

保持前進、持續優化程式碼內涵系列 第 13

13. 單元測試的概念與原則(待補完)

談談單元測試,我們閒聊了一下單元測試,接下來,我們來聊聊單元測試的基本原則。

筆者在這邊再次說明,在這個系列文章,大多是說持續優化程式碼的方向,使用的技術的概念與原則。文章內容不會提過於深入的實作與內容,因為每個主題,都是一門很深的學問。筆者沒辦法,也不可能在這 30 天,鉅細靡遺的全部說明。

1. 基本準則

最小的測試單位

不與外部(包括檔案、資料庫、網路、服務、物件、類別)直接相依

一個測試案例只測一種方法

測試案例不具備邏輯

測試案例之間相依性為零

2. FISRT

Fast 快速

Independent/Isolated 獨立

Repeatable 可重現的

Self-Validating 可自我驗證

不管單元測驗通過否,應該可以從測試工具產生的測試報告,明白的得知測試結果與失敗原因。

Timely 即時

3. 測試案例的分工 - 3A

Arrange

在這部份,負責宣告或定義所有使用的資料、物件、期望輸出的結果。

Act

Assert

4. 後言

就筆者目前己知的單元測試,本身是非常吃物件導向的特性SOLID 原則。所以,假若本身對物件導向相關概念不熟悉的話,是非常難切入單元測試的。

順帶一提,對於單元測試的測試案例,應該也要特別注意測試案例的閱讀性,當測試案例己經不符合待測試功能本身的特性時,也會需要做對應的修改。這時,測試案例的閱讀性就顯得十分重要。

5. 推薦

書藉

文章


上一篇
12. 談談單元測試 (待補完)
下一篇
14. 單元測試的靈魂角色—Test Double (待補完)
系列文
保持前進、持續優化程式碼內涵24
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言