每日一句
2026 年 05 月 15 日
「在開發時應該思考,如何讓錯誤不容易發生,或者是容易被測到。」——《軟體測試修練指南:我獨自升級的實戰心法》
可測試性?那是什麼?可以吃嗎?
對於很多軟體工程師來說,讓「程式碼可以更容易被測試」並不在他們的防守範圍。
因此測試左移什麼的,當然也是門都沒有。
但明明我們都曾遇過一種狀況,盯著前人留下的一段程式碼,看了一下午,還是難以為它補上一段測試。
因為它邏輯藏在深處、相依性錯綜複雜,會不會其實是這段程式碼在先天上軟體設計就出了點問題?
可測試性,本來就是軟體設計品質的一部分,一段設計良好的程式碼,應該讓測試變得容易。
這麼說來 TDD 會被人推崇,還真不是沒有道理,透過先寫測試再寫程式,打從開發的思維、行為與流程下手,讓你在一開始就把事情做對。
讓錯誤不容易發生、讓錯誤容易被測到,都需要依靠好的軟體設計。
你們團隊在開發時,有沒有把「這段程式碼好不好測試」納入設計的考量?