測試點通過測量軟件測試過程的大小來反映測試活動的復雜度,以此來保證軟件達到質量目標。 作為 復雜度測量 ,它需要盡最大努力去反映測試活動的執行,包括測試計劃、測試設計、測試執行、測試報告和缺陷跟蹤。
測試點分析將測試用例集作為輸入來生成測試點。
壹個測試用例的復雜度包含四個維度: 檢查點(checkpoint)、前置條件(precondition)、測試數據(test data)、用例類型(types of test case) 。
這個說法是壹種有效的假設。
這些維度被分類為兩種類型:
每壹個測試用例被設計為壹定數量的測試點。這些測試點由壹定數量的checkpoint,前置條件的復雜度和用例中用到的測試數據所構成。
checkpoint 是測試人員需要在測試中檢查目標函數的輸出是否與預期結果壹致的條件。 壹個用例中包含壹個或多個檢查點。
Precondition 。 測試用例的前置條件指定了測試用例執行的條件。 Precondition 和 test data 壹樣,主要影響測試執行的成本。 對測試用例而言,壹些前置條件會和測試數據構造相關聯。
表1:前置條件(Precondition)復雜度等級描述
Test Data 。 測試數據用來執行測試用例。 可以產生在測試執行過程中,也可以在測試前通過以前的測試來準備好,或者用測試腳本來生成。 對壹組測試用例或者整個系統而言,測試數據可以是通性的,也可以是特性的。 通性的測試數據可以被多組測試用例重復使用。
表2:測試數據(Test Data)復雜度等級描述
表3:前置條件的測試點分配
表4:測試數據的測試點分配
表3和表4的常數來自壹份調查,其中調查了18個測試工程師。標準差的值反映了調差結果的偏差。這些估算出來的常數可以更好的反映項目和環境的特征。
表5:各測試類型的權重
最終所有調整測試點(Adjust Test Case Point)的和為:
UTCP為UnAdjust Test Case Point
W為Test Case的權重
測試活動可以被分成四類:測試計劃、測試設計、測試執行和缺陷報告。 在這四類活動中,測試執行和缺陷報告在項目的某個測試用例中會被執行多次。 但是,測量出的測試點規模是分散在這四類活動中的,這樣測量的前提是每個活動都被執行壹次。 每個測試活動的投入分布允許我們不止壹次的來預測測試執行和缺陷報告的執行投入。 每個測試活動投入分布可以通過歷史數據來生成。
表6:測試投入分布
依據信息和資源的可用性,測試投入可以通過以下簡單的方法去預估:
The Productivity Index可以通過歷史數據來決定
通過歷史數據的代入,可以通過線性擬合求出系數A和B的值。 再將其代入來預估新版本的Effort
軟件測試在壹個成功軟件的開發和維護過程中都扮演著壹個重要的角色。 精確預估測試投入是達到目標的壹個關鍵步驟。 為了試圖去填補預估軟件測試的空白,本文提出了測試點分析的方法,以及該方法如何去計算軟件測試活動的規模和投入。 這個分析的輸入是測試用例集,輸出為每個用例的測試點。
用例作為壹個測試人員的產物,需要應用在測試執行活動中。 測試點分析方法壹個有力的特性是它可以測量壹個用例的復雜度。 這樣可以更好的反映測試人員在他們活動中的投入。
另壹個優勢是通過計取checkpoint的個數,測量前置條件和測試數據的復雜度,決定每個測試用例的類型後,可以很方便的進行應用。
但是,這種方法也有很多限制。
日後在該方法上進行改進時需要註意這些限制!!!
原文來自 Test Case Point Analysis