斷言免費測試
2004 年 8 月 3 日
這是朋友的朋友說的故事。我確定這一定是真的,至少在某個地方。
一個專案開始進行一個大型系統。它外包給一家大型軟體/顧問公司 - 我知道你聽過。他們為標案組成一個令人印象深刻的團隊,並自然而然地將他們全部換成許多初階人員來進行實際工作。所有標準程序。
轉折點在於,該公司非常重視使用 JUnit 進行大量測試。每個公開方法都必須有 JUnit 測試。他們自豪地向客戶展示所有測試和綠色條。
然而,JUnit 測試中沒有任何斷言。
我不知道他們是否對這個專案進行程式碼覆蓋率分析,但當然你可以這麼做,並獲得 100% 的程式碼覆蓋率 - 這是你必須小心解釋程式碼覆蓋率資料的原因之一。[1]
註解
1: 雖然無斷言測試大多是笑話,但它並非完全無用。正如 Carlos Villela 提醒我的,有些錯誤確實會透過程式碼執行而顯示出來,例如空指標例外。