第3章 软件测试方法--基于组合技术和组合优化的方法(决策表、因果图、场景测试)
文章目錄
- 3.3 基于組合技術和組合優化的方法
- 3.3.1 判定表(決策表)測試
- 3.3.2 因果圖法
- 3.3.3 兩兩組合(Pair-wise)方法
- 3.3.4 正交實驗法
- 3.3.5 基于場景的測試
- 黑盒測試方法比較
3.3 基于組合技術和組合優化的方法
3.3.1 判定表(決策表)測試
使用決策表測試方法的原因:
??因為等價類測試獨立性假設,忽略輸入條件的相互關聯,所以測試用例存在嚴重的冗余。
??決策表是功能性測試方法中最嚴格的。決策表的完備性保證一種完備的測試。
??對于多因素,有時可以直接對輸入條件進行組合設計,不需要進行因果分析,即直接采用判定表方法。
??決策表的優點:能夠將復雜的問題按照各種可能的情況全部列舉出來,簡明并避免遺漏。因此,利用決策表能夠設計出完整的測試用例集合。基于決策表的測試是以等價類為基礎的,測試的完備性和無冗余性通過決策表可以得到較為完美的體現。
??判定表:由“條件和活動”兩部分組成,即列出一個測試活動執行所需的條件組合,所有可能的條件組合定義了一系列的選擇,而測試活動需要考慮每一個選擇。
判定表 元素:
- 條件樁,列出問題的所有條件
- 動作樁:列出可能針對問題所采取的操作
- 條件項:針對所列條件的具體賦值
- 動作項:列出在條件項(各種取值)組合情況下應該采取的動作。
- 規則:任何一個條件組合的特定取值及其相應要執行的操作。
例:
判定表方法步驟:
決策表的化簡:
前提條件:1.輸出完全相同; 2.輸入相似:僅一個輸入條件可不同,其他完全相同。
例子:
例1
對功率大于50馬力的機器、維修記錄不全或已運行10年以上的機器,應給予優先的維修處理
基于決策表的測試注意事項:
總結:
- 目標:在特定條件下消除等價類測試的冗余
- 基本思想:基于強組合等價類測試得到有效域上完整的測試用例集合,并通過合并化簡消除用例間的冗余。
- 以強組合等價類測試為基礎,遵循獨立性假設
3.3.2 因果圖法
適用于多種輸入條件的組合,產生多種結果設計測試用例
使用步驟:
基本符號:
原因——》結果
原因——》原因
結果——》結果
例1:某個軟件規格說明書中包含以下的要求:第一個字符必須是A或B,第二個字符必須是一個數字,在此情況下進行文件的修改;但如果第一列字符不正確,則輸出信息L;如果第二列字符不是數字,則給出信息M。采用因果圖方法進行分析,可根據下表獲得圖的各種組合。
3.3.3 兩兩組合(Pair-wise)方法
大部分缺陷是在兩個變量取值沖突的測試時被發現的 。
“Pair-wise Testing”基本原理:不測試所有的組合,測試所有的“Pair-wise ”即可。
可使用一些測試工具:CATS,OATS,AETG等
3.3.4 正交實驗法
測試步驟:
使用原因:測試組合會變得很多,如果按照傳統的測試方法,會導致很大的測試工作量
設計方法:從大量的(實驗)數據(測試例)中挑選適量的、有代表性的點(條件組合),從而合理地安排實驗(測試)的一種科學實驗設計方法 。
例子:
3.3.5 基于場景的測試
基本原理:
基本流:從系統的某個初始狀態開始,經一系列狀態變化后到達終止狀態的過程中最主要的一個業務流程
備選流:以基本流為基礎,在經過基本流上每個判定節點(包括條件判定和循環判定)處滿足不同的觸發條件,而導致的其他事件流
區別:
場景設計的基本原則:
- 最少的場景數等于事件流的總數,即基本流與備選流的總數
- 有且唯一有一個場景僅包含基本流
- 對應某個備選流,至少應有一個場景覆蓋該備選流,且在該場景中應盡量避免覆蓋其他的備選流
例子:
測試用例設計:
測試數據設計:
總結:
該法主要用于功能測試
黑盒測試方法比較
測試工作量
測試執行工作量:
測試用例標識工作量:
??容易使用的方法將生成大量測試用例,執行時間長,而若將工作量投入到更精細的測試方法,則執行時間會縮短。
測試效率:
局限性:存在未測試的功能漏洞和冗余測試。
結論:功能性測試有漏洞,使用更精細的手段可縮小這些漏洞。
測試有效性
研究測試有效性的困難:不知道程序中的所有缺陷,因此永遠也不會知道給定方法所產生的測試用例是否能夠發現這些缺陷。
黑盒測試使用方針:
總結
以上是生活随笔為你收集整理的第3章 软件测试方法--基于组合技术和组合优化的方法(决策表、因果图、场景测试)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Flask 吐血400错误
- 下一篇: (附源码)计算机毕业设计SSM基于Jav