軟體測驗的方法
從哲學觀點看,分析問題和解決問題的方法有兩種:白盒方法和黑盒方法,
所謂白盒方法就是能夠看清楚事物的內部,即了解事物的內部結構和運行機制,通過剖析事物的內部結構和運行機制,來處理和解決問題,如果我們沒有辦法或不去了解事物的內部結構和運行機制,而把整個事物看成一個整體——黑盒子,通過分析事物的輸入、輸出以及周邊條件來分析和處理問題,這種方法就是黑盒方法,
白盒測驗
陳述句覆寫
陳述句覆寫方法的基本思想是設計若干測驗用例,運行被測程式,是程式中的每個可執行陳述句至少被執行一次,
判定覆寫
判定覆寫法的基本思想是設計若干用例,運行被測程式,使得程式中每個判斷的取真分支和取假分支至少經歷一次,即判斷真偽值均曾被滿足,一個判定往往代表著程式的一個分支,所以判定覆寫也被稱為分支覆寫,
條件覆寫
條件覆寫的基本思想是設計若干測驗用例,執行被測程式以后,要使每個判斷中每個條件的可能取值至少滿足一次,
判定-條件覆寫
判定-條件覆寫實際上是將前兩種方法結合起來的一種設計方法,它是判定和條件覆寫設計方法的交集,即設計足夠的測驗用例,使得判斷條件中的所有條件可能取值至少執行一次,同時,所有判斷的可能結果至少執行一次,
條件組合覆寫
條件組合覆寫的基本思想是設計足夠的測驗用例,使得判斷中每個條件的所有可能至少出現一次,并且每個判斷本身的判定結果也至少出現一次,它與條件覆寫的差別是它不是簡單地要求每個條件都出現“真”與“假”兩種結果,而是要求讓這些結果的所有可能組合都至少出現一次,
路徑覆寫
路徑覆寫就是設計所有的測驗用例,來覆寫程式中的所有可能的執行路徑,
- 事實上,采用其中任何一種方法都不能完全覆寫所有的測驗用例,因此,在實際的測驗用例設計程序中,可以根據需要和不同的測驗用例設計特征,將不同的設計方法組合起來,交叉使用,以達到最高的覆寫率,
基本路徑測驗法
基本路徑測驗法是在程式控制流圖的基礎上,通過分析控制構造的環路復雜性,匯出基本可執行路徑集合,從而設計測驗用例的方法,設計出的測驗用例要保證被測驗程式的每個可執行陳述句至少被執行一次,
基本步驟
(1)程式的流程控制圖
(2)計算程式環路復雜度
(3)確定基本路徑
(4)準備測驗用例,確保基本路徑組中的每一條路徑被執行一次
(5)利用圖形矩陣可以自動實作一個基本路徑集
黑盒測驗
等價類劃分法
等價類劃分法基于對輸人或輸出情況的評估,然后劃分成兩個或更多子集來進行測驗的一種方法,即它將所有可能的輸人資料(有效的或無效的)劃分成若
千個等價類,從每個等價類中選擇一定的代表值進行測驗,等價類是指某個輸入域的一個特定的子集合,在該子集合中各個輸入資料對于揭露程式中的錯誤都是等效的,
有效等價類和無效等價類
● 有效等價類是指輸入完全滿足程式輸入的規格說明、有意義的輸入資料所構成的集合,利用有效等價類可以檢驗程式是否滿足規格說明所規定的功能和性能,
● 無效等價類和有效等價類相反,即不滿足程式輸入要求或者無效的輸入資料構成的集合,使用無效等價類,可以測驗程式/系統的容錯性一對例外輸入情況的處理,
邊界值分析法
邊界值分析法就是在某個輸人輸出變數范圍的邊界上,驗證系統功能是否正常運行的測驗方法,
(1)如果輸人條件規定了值的范圍,則取剛剛達到這個范圍的邊界值;
(2)如果輸入條件規定了值的個數,則用最大個數、最小個數、比最大個數多1個、比最小個數少1個的數等作為測驗資料,
(3)根據規格說明的每一個輸出條件,分別使用以上兩個規則,
(4)如果程式的規格說明給出的輸入域或輸出域是有序集合(如有序表、順序檔案等),則應選取集合的第一個和最后一個元素作為測驗資料,
判定表方法
● 條件樁:列出問題的所有條件;
● 動作樁:列出可能針對問題所采取的操作;
● 條件項:針對所列條件的具體賦值,即每個條件可以取真值和假值,
● 動作項:列出在條件項(各種取值)組合情況下應該采取的動作,
● 規則:任何一個條件組合的特定取值及其相應要執行的操作,在判定表中貫穿條件項和動作項的一列就是一條規則,
判定表制定一般經過下面4個步驟:
(1)列出所有的條件樁和動作樁;
(2)填入條件項;
(3)填入動作項,制定初始判定表;
(4)簡化、合并相似規則或者相同動作,
因果圖法
因果圖法(Cause-effectDiagram)借助圖形,著重分析輸入條件的各種組合,每種組合條件就是“因”,它必然有一個輸出的結果,這就是“果”,
生成測驗用例步驟
(1)分析軟體規格說明書中的輸入輸出條件并分析出等價類,將每個輸入輸出賦予一個識別符號;分析規格說明中的語意,通過這些語意來找出相對應的輸入與輸入之間,輸入與輸出之間的關系,
(2)將對應的輸入輸出之間,輸入與輸出之間的關系關聯起來,并將其中不可能的組合情況標注成約束或者限制條件,形成因果圖,
(3)由因果圖轉化成判定表,
(4)將判定表的每一列拿出來作為依據,設計測驗用例,
正交試驗法
- 確定影響功能的因子與狀態
- 選擇一個合適的正交表
- 利用正交表構造測驗資料集
功能圖法
功能圖法就是使用功能圖形式化地表示程式的功能說明,并機械地生成功能圖的測驗用例,功能圖模型由狀態遷移圖和邏輯功能模型組成,其中:
● 狀態遷移圖用于表示輸入資料序列以及相應的輸出資料,由輸入和當前的狀態決定輸出資料和后續狀態;
● 邏輯功能模型用于表示狀態輸入條件和輸出條件之間的對應關系,邏輯功能模型只適合于描述靜態說明,輸出資料僅僅由輸入資料決定,
錯誤推測法
有經驗的測驗人員往往可以根據自己的作業經驗和直覺推測出程式可能存在的錯誤,從而有針對性地進行測驗,這就是錯誤推測法(errorguessmethod),或叫探索性測驗方法(exploratory test), 錯誤推測法是測驗者根據經驗、知識和直覺來發現軟體錯誤,來推測程式中可能存在的各種錯誤,從而有針對性地進行測驗,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/99215.html
標籤:其他
