《Unit Testing》1.4. 成功的测试套件拥有哪些属性?
什么造就了成功的測試套件
如果測量測試套件的質(zhì)量?
唯一可行的辦法就是對測試套件里每一個測試進行單獨的評估。
你不需要一次性把它們都評估完。
你可以逐步的進行評估
?
成功的測試套件擁有以下屬性:
集成到開發(fā)周期中
只針對代碼庫中最重要的部分
它以最低的成本提供最大的價值
集成到開發(fā)周期中
擁有自動化測試的唯一重點就是你要經(jīng)常使用它們。
所有的測試都應(yīng)該集成到開發(fā)周期中。
最理想的情況是,每當(dāng)有代碼變化,都應(yīng)該執(zhí)行這些測試,哪怕是最微小的代碼變化。
?
只針對代碼庫中最重要的部分
將單元測試的重點放在系統(tǒng)中最關(guān)鍵的部分,針對其余部分僅進行簡單或間接的測試即可,這一點很重要。
在大多數(shù)應(yīng)用程序中,最重要的部分是包含業(yè)務(wù)邏輯部分的領(lǐng)域模型(Domain ? ? Model)。
測試業(yè)務(wù)邏輯會為您的時間投資提供最佳回報。
?
所謂的其余部分可以分為以下三類:
基礎(chǔ)設(shè)施代碼
外部服務(wù)和依賴,例如數(shù)據(jù)庫和第三方系統(tǒng)
粘合一切的代碼
?
為此,您應(yīng)該將域模型與代碼庫的非必要部分隔離開來。您必須將域模型與所有其他應(yīng)用程序關(guān)注點分開,以便您可以將單元測試工作的重點放在該域模型上。
?
以最低的成本提供最大的價值
將測試合并到構(gòu)建系統(tǒng)中是不夠的,保持域模型的高測試覆蓋率也是不夠的。同樣重要的是,只在測試套件中保留價值超過其維護成本的測試。最后一個屬性可以分為兩點:
識別一個有價值的測試(擴展一下,包括如何識別低價值的測試)
編寫一個有價值的測試。
總結(jié)
以上是生活随笔為你收集整理的《Unit Testing》1.4. 成功的测试套件拥有哪些属性?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Kubernetes:通过自动化节省IT
- 下一篇: C# 9.0 终于来了, Top-lev