今天還要聚餐,決定簡單轉貼一下之前讓我很衝擊的東東:社交型單元測試
探討單元測試和整合測試的涵蓋範圍 - WadeHuang的學習迷航記

  • 孤立型的單元測試:受測物件不會使用真實的依賴類別
  • 社交型的單元測試:受測物件會使用真實的依賴類別

我一直以為出手就是要瘋狂 MOOOOOOOCCCKKKKK,著實有點嚇到= =

但當我看到這段:

在《修改軟件的藝術》第 10 章測試先行,作者提及 TDD 的單元測試與狹義的單元測試不同,TDD 是以一個行為作為一個單元

一個獨立、可驗證的行為。這個行為會對系統產生可觀察的影響,且不和系統的其他行為耦合。

這個單元測試的定義意味著:每個可觀察到的行為都應該要有一個相對應的測試。
另外在《Growing Object-Oriented Software, Guided by Tests》第五章節也指出,應該針對行為進行單元測試,而非針對方法。

這下真相大白了!如果你是 BDD 或 TDD 的實踐者,那麼你的單元測試就可能是跨多個類別的社交型單元測試,因為測試的對象是 一個行為,而非一個類別

覺得也挺有道理 🤔

決定分享給大家。明天見~