程式設計師測試原則 - Kent Beck

banq發表於2019-07-02

1. 程式設計師測試應該很快
測試反饋不應該擾亂程式設計流程。

2.程式設計師測試應該是確定性的。

3. 程式設計師測試應該是預測性的。
程式設計師測試應該對行為變化敏感,但對結構變化不敏感。如果程式的行為從觀察者的角度來看是穩定的,那麼任何測試都不應該改變。

結構不變測試需要特定的程式設計和設計風格以及特定的設計風格。我經常看到斷言的測試,“斷言此物件使用這些引數將此訊息傳送到該物件,然後將此其他訊息傳送到另一個物件。”這樣的斷言基本上是世界上最笨拙的程式語言語法。如果我關心操作的順序,那我設計的系統是錯誤的。

4. 程式設計師測試應該很便宜。
不僅編寫測試方便,也要與程式碼一樣,讓別人理解閱讀方便,同時應對變化的成本很低,常見的反例是單個行為變化,導致一堆紅色測試。如果現在必須單獨檢查和修改每個測試,那麼測試將變為停車制動器。

總結 - 程式設計師測試應該:
  • 最大限度地減少程式設計師的等待。
  • 執行可靠。
  • 預測可部署性。
  • 回應行為變化。
  • 不響應結構變化。
  • 寫得便宜。
  • 閱讀便宜。
  • 變化便宜。


 

相關文章