使用正交矩陣方法來(lái)設計測試用例,可以顯著(zhù)減少測試用例的數目,提高測試效率。
例如,某網(wǎng)站運行需要支持以下條件:
(1)不同的瀏覽器,如IE5.0、IE5.5、IE6.0、Netscape6.0、Netscape6.1、Netscape7.0、Mozillal.1和Opera7。
(2)不同的插件:RealPlayer、MediaPlayer或者沒(méi)有任何插件None。
(3)不同的客戶(hù)端操作系統:Windows 95、Windows 98、Windows ME、Windows NT、Windows 2000和Windows XP。
(4)不同的Web服務(wù)器軟件,如IIS、Apache和WebLogic;
(5)不同的服務(wù)器端操作系統,如Windows NT、Windows 2000和Linux。
如果對這個(gè)網(wǎng)站進(jìn)行測試,需要考慮5中環(huán)境不同組合:
(1)8種瀏覽器。
(2)3種插件。
(3)6種客戶(hù)端操作系統。
(4)3種Web服務(wù)器軟件。
(5)3種服務(wù)器端操作系統。
計算下來(lái),需要設計和執行的測試用例的數目是1296(8×3×6×3×3=1296)。而使用正交矩陣方法來(lái)設計測試用例,只需要64個(gè)測試用例,從數目上減少了95%。
正交矩陣實(shí)際上是一個(gè)二維矩陣,它的一個(gè)特征就是矩陣中任何兩列都覆蓋了數據的兩兩組合。根據這一特性,選擇可以覆蓋所有輸入數據的兩兩組合的正交矩陣,將測試需求映射到這個(gè)正交矩陣上,即可滿(mǎn)足測試用例設計的充要性。
下面是使用正交矩陣方法構建測試用例的步驟:
識別參數。上述網(wǎng)站的輸入參數包括瀏覽器、插件、客戶(hù)端操作系統、Web服務(wù)器軟件和服務(wù)器端操作系統等5個(gè)參數。
確定每個(gè)參數的取值個(gè)數:
8種瀏覽器:IE 5.0、IE 5.5、IE 6.0、Netscape 6.0、 Netscape 6.1、Netscape 7.0、Mozilla 1.1和Opera7。
3種插件:RealPlayer、MediaPlayer或者沒(méi)有任何插件None。
6種客戶(hù)端操作系統:Windows 95、Windows 98、Windows ME、 Windows NT. Windows 2000和Windows XP。
3種Web服務(wù)器軟件:IIS、Apache和WebLogic。
3種服務(wù)器端操作系統:Windows NT、Windows 2000和Linux。
選擇正交矩陣。選擇的正交矩陣應當有5列(對應5個(gè)參數),其中第1列(瀏覽器)需要支持8個(gè)不同的取值個(gè)數,第2列(插件)需要支持3個(gè)不同的取值個(gè)數:第3列(操作系統)需要支持6個(gè)不同的取值個(gè)數;第4列(Web服務(wù)器)需要支持3個(gè)不同的取值個(gè)數;第5列(服務(wù)器操作系統)需要支持3個(gè)不同的取值個(gè)數。因此正交矩陣應該是816133,分別表示其中一列是8個(gè)取值;另外一列是6個(gè)取值;其他3列都是3個(gè)取值。而現實(shí)中沒(méi)有這樣的正交矩陣,因此需要選擇一個(gè)規模更大的正交矩陣以滿(mǎn)足覆蓋的要求。這個(gè)矩陣就是L64(8243)。其中8161可以由82來(lái)滿(mǎn)足,33可以由43來(lái)滿(mǎn)足。采用L64(8243)正交矩陣覆蓋網(wǎng)站參數的所有取值的兩兩組合只需要64個(gè)測試用例。
映射正交矩陣。將網(wǎng)站參數的取值映射到L64(8243)矩陣中。
按照映射后的正交矩陣構建測試用例。
這正是:
顯著(zhù)減少用例數,應用正交矩陣法
正交特性用的好,測試就會(huì )很高效
參考書(shū)目:軟件測試設計,作者:馬均飛,鄭文強,出版社:電子工業(yè)出版社
聯(lián)系客服