1. 程式人生 > >《構建之法》第二章學習筆記

《構建之法》第二章學習筆記

單元測試

目的:使模組功能定義儘量明確

主要步驟:

(1)設定資料
(2)使用被測試型別功能
(3)比較實際結果和預期結果

標準:

(1)在最基本的功能/引數上驗證程式的正確性,測試程式中最基本的單元,測試API中的每一個方法及引數
(2)由程式作者來寫,設計時就寫好單元測試
(3)單元測試過後,機器狀態保持不變
(4)單元測試要快
(5)應該產生可重複、一致的結果
(6)不依賴其他測試,可以構建資料保證獨立性
(7)應覆蓋所有程式碼路徑,必須測試公開的和私有的函式和方法
(8)應整合到自動測試框架中,方便隨時隨地執行單元測試
(9)單元測試必須和產品程式碼一起儲存維護

迴歸測試

目的:

(1)驗證新程式碼的確改正缺陷
(2)驗證新程式碼沒有破壞現有功能

基礎;單元測試

效能分析

分析方法:

(1)抽樣:時不時檢視執行在哪個函式中,並記錄下來。優點不用改動程式,執行快,缺點不能得出精確結論
(2)程式碼注入:將檢測程式碼加入到每個函式中。優點結果精確,缺點執行時間長,產生大量資料檔案,增加效能分析時間

一般方法:先抽樣找瓶頸再注入進行詳細分析

個人軟體開發流程PSP

PSP流程:

計劃
開發
記錄用時
測試報告
計算工作量
事後總結
提出過程改進計劃

特點:

(1)著眼開發流程
(2)自己收集資料
(3)依賴資料
(4)記錄工程師需求效率

實踐中的複雜性和易變性

資料——緯度、量、長度等屬性

需求——緯度、新方式、重複成熟需求

使用者——單使用者。多使用者(數量、地域、善意惡意)

軟體——遷移、介面、升級