程序測試是一種「特殊的程序開發理論」,與面向過程,面向對象同樣,都是對** 程序理論 **的應用。框架
測試是用一個標準或規格對比一個實際物,看符合程度是什麼,例如測量身高是一個量化測試,而智力測試則是一個質化測試。前者有單一的標準,後者標準比較複雜。軟件測試同理,是一種質化測試,對比的規格是「計算功能」這種「質」。函數
程序測試分爲人工的集成測試和自動化的單元測試工具
程序開發理論:開發任意的計算功能 程序測試理論:開發「測試/驗證計算功能,驗證某個程序(單元)」的計算規格,並進行報告單元測試
測試框架/工具提供特定的API,來完成嘗試任務(編寫測試程序) 使用預期:規格spec 使用斷言:驗證 使用模擬:程序單元測試
參考測試框架的形式: 這段「測試程序」代碼是一段針對prettyDate特製(ad-hoc )的,其中包含了全套通用測試框架(testing framework)的形式部分,例如測試程序主體(test),測驗輸入(then)輸出(result),測驗的參考「預期答案」(expected),對輸出的斷言操做(!==),測試報告等。從代碼看到整個測試的流程(測試程序的執行):一次測驗會用輸入(then)調用功能函數,接收輸出(result)並進行斷言(!==expected),最後記錄測試結果用於報告。一次測試由多個測驗組成。對象