軟件測試設計:對比樣本的選取
軟件測試和做科學實驗一樣,經常需要在被測試數據之外,增加設計一組數據作為對比樣本,用以判斷軟件在被測試條件下的實際執行結果是否與預期相符。在很多時候,這個對比樣本也就是預期結果。在工作中,經常有測試人員對于如何選取測試對比樣本感到比較疑惑,所以我把個人在這方面的經驗總結成本文。
在我的測試經驗中,測試對比樣本主要可以通過如下幾種途徑來選取:
1、人工分析;
2、被測軟件的其他輸入;
3、同類軟件。
一、人工分析
人工分析:也就是根據相關的需求和設計文檔,分析待測程序在被測試條件下的內部處理邏輯,以人工方式進行計算、推導,得到的預期結果。
當然,這里說的人工方式,其實也有可能是測試人員自己編寫一個小程序或腳本、甚至是電子表格公式來計算,取決于分析和計算的復雜程度。一般情況下,測試對比樣本(預期結果)都可以通過這種方式得到。實際的例子太多了,比如:測試軟件有個功能是用來改變某個數據對象的狀態的,可以直接通過設計文檔知道該功能會影響哪些數據和文件屬性等。
優點:應用廣泛、幾乎適用于所有情況
缺點:在復雜的計算中較為費時費力、只能從正面驗證
二、被測軟件的其他輸入
被測軟件的其他輸入:被測試軟件在與被測條件可類比的輸入條件下的執行結果,使被測條件下的實際結果是否正確能一目了然。
增加或減少特定的被測條件,就可以直觀地了解到該條件對結果的影響,從而判斷實際執行結果是否與該被測條件對結果的預期影響相符。特別需要提醒注意,此方法有一個前提:被測試軟件在其他條件下的執行結果可信賴,也就是用以進行類比的測試條件通過了測試。實際的例子,比如搜索功能里的是否區分大小寫選項,測試時只需要在不啟用該選項時的結果通過測試的情況下,與啟用該選項后的結果對比即可。
優點:直觀、比手工分析省時省力、可進行負面驗證
缺點:依賴于待測軟件的已驗證功能、難以應付預期結果不是“非此即彼”的測試條件
三、同類軟件
同類軟件:其他可信賴的同類軟件在被測條件或類似條件下的執行結果。
這里的同類軟件,可以是被測試軟件的已通過測試版本,也可以是使用同一設計標準的同行(競爭對手)軟件。實際的例子,如計算兩個句子的相似程度。由于該算法比較復雜,用第一種方式雖然是最準確的,但是太費時費力,在實際測試中不具有可行性,所以我們一般是用待測軟件的上一個公開發布版本作參考。另外一個選擇是其他競爭對手的同類軟件,但由于算法上的細節或多或少肯定有區別,這類結果只能作為參考,而不能直接照搬。
優點:直觀、比手工分析省時省力
缺點:依賴于被測軟件的已測試版本或其他同類軟件
posted on 2012-05-25 09:16 順其自然EVO 閱讀(198) 評論(0) 編輯 收藏 所屬分類: 測試學習專欄