使用正交表高效地设计测试用例
(我的公眾號“墨石測試攻略”,分享測試經驗,歡迎關注!)
在測試過程中,我們會遇到一些可能的輸入數據或輸入數據組合量很大的情況,我們不可能對每個組合都創建測試用例。使用一般的測試方法可能會產生大量的冗余測試,而使用正交表可以用最少的測試用例獲得最大的測試覆蓋率。
概念說明
正交試驗設計法:是研究多因素水平的一種方法,根據正交性,從大量的試驗點中挑選出適量的、有代表性的點進行試驗。
特點:通過對部分試驗結果的分析了解全面試驗的情況,找出最優的水平組合。
正交表由行、因素、水平構成。
行:即試驗的次數
因素(Factor):在同一試驗中,影響試驗結果的輸入條件稱為因素
水平(Lever):影響每個試驗因素的取值或輸入稱為水平
正交表的表示形式:
設計步驟
用正交表設計測試用例的步驟:
1、確定因素:即確定交互測試中有多少個相互獨立的變量
2 、確定水平:即確定每個變量可以取值的的個數的最大數
3 、選擇正交表:選擇一個次數(Run)數最少的最適合的正交表。一個最合適的正交表是至少滿足第一步說明的因素數且至少滿足第二步說明的水平數。如果沒有合適的正交表或需要的功能測試數量太多,要對因素和水平進行調整
如何選擇:考慮因素的個數;因素水平的個數;正交表的行數,取行數最少的那個
4 、套用正交表,把因素和值映射到表中
5、加上一些你認為可疑但沒有在表中出現的組合,或去掉一些實際并不可能出現的組合
6、將上述所描述的組合轉化成測試用例
舉例
場景:根據姓名、電話、班級查找學生。使用正交實驗法分析過程如下:
第一步:確定因素
本例中一共有三個因素:姓名、電話、班級
第二步:確定水平
每個因素的取值稱為水平。姓名、電話、班級各有兩個水平:輸入(1),不輸入(0)
| 姓名 | 電話 | 班級 |
| 輸入 | 輸入 | 輸入 |
| 不輸入 | 不輸入 | 不輸入 |
第三步:選擇正交表
表中的因素數>=3,表中至少有三個因素的水平數>=2,行數(試驗次數)取最少的那個,因此選擇這個正交表L4(2^3)--表示需做4次試驗,最多觀察3個因素,每個因素均有2個水平:
| 序號??? | 1??? | 2??? | 3??????????? |
| 1??? | 1??? | 1??? | 1 |
| 2??? | 1??? | 2??? | 2 |
| 3??? | 2??? | 1??? | 2 |
| 4??? | 2??? | 2??? | 1 |
備注:并不是我們想要什么正交表就有什么正交表,有的正交表是沒有被設計出來的,我們選取正交表時只能從現有的正交表中進行選擇,而且選擇的正交表要滿足上述中的因素數和因素水平,在這個前提下選擇行數最少的一個。
(可以通過下列的網址查找正交表http://support.sas.com/techsup/technote/ts723_Designs.txt)
第四步:套用正交表
| 序號??? | 姓名 | 電話 | 班級 |
| 1??? | 輸入 | 輸入 | 輸入 |
| 2??? | 輸入 | 不輸入 | 不輸入 |
| 3??? | 不輸入 | 輸入 | 不輸入 |
| 4??? | 不輸入 | 不輸入 | 輸入 |
第五步:結合實際情況增刪測試組合
正交表是用數學推導出來的,有的組合可能并沒有實際意義,有的實際情況可能并沒有包含。
| 序號??? | 姓名 | 電話 | 班級 |
| 1??? | 輸入 | 輸入 | 輸入 |
| 2??? | 輸入 | 不輸入 | 不輸入 |
| 3??? | 不輸入 | 輸入 | 不輸入 |
| 4??? | 不輸入 | 不輸入 | 輸入 |
| 5 | 不輸入 | 不輸入 | 不輸入 |
第六步:將第五步描述的組合轉化為測試用例
| 用例編號?? | CX-001 |
| 測試項目 | 學生查詢系統 |
| 用例標題 | 輸入姓名、電話,不輸入班級,查詢學生 |
| 用例等級 | 中 |
| 前置條件 | 數據庫中已存在學生數據 |
| 操作步驟 | 1、進入查詢界面 2、輸入學生姓名 3、輸入學生電話號碼 4、點擊【查詢】 |
| 預期結果 | 查詢出符合條件的學生姓名 |
總結與分析
這個示例中,因素數和水平數剛好符合正交表,可以直接套用。如果使用普通的設計方法,那么全部組合可能設計出23=8種。而使用正交表,只需5種,減少了一些冗余的測試組合。
使用正交表有優點也有局限性,在實際使用過程中,可能找不到正好符合的正交表,那么我們可以選取最相近的正交表。大家在工作中多嘗試,多總結經驗,尋求最優解。
歡迎關注個人公眾號:墨石測試攻略。我是墨石,高級測試工程師,和你分析測試技能、實戰經驗。
總結
以上是生活随笔為你收集整理的使用正交表高效地设计测试用例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2023上海大学电气工程及其自动化考研必
- 下一篇: 双闭环可逆直流脉宽pwm调速系统设计及m