如何針對(duì)重復(fù)問題創(chuàng)建測(cè)試矩陣
輸入字段的文字矩陣只是測(cè)試員可以創(chuàng)建的各類有用矩陣中的一個(gè)例子。輸入字段并不是唯一可以別標(biāo)準(zhǔn)化的對(duì)象。只要某種情況在項(xiàng)目內(nèi)部或項(xiàng)目之間反復(fù)出現(xiàn),都要花時(shí)間和精力制定一個(gè)測(cè)試大綱的基礎(chǔ)。有了大綱,總可以用矩陣形式表達(dá)。
以下是不涉及輸入變量的一個(gè)例子。
在這個(gè)例子中,大綱列出程序嘗試把文件寫入磁盤的各種失敗方式。有很多種情況程序會(huì)試圖寫文件,例如:
保存新文件。
覆蓋同名文件
在結(jié)尾處續(xù)接文件。
用同名文件的新版本取代正在編輯的文件。
轉(zhuǎn)換到另一種文件格式。
打印內(nèi)容存盤。
消息或錯(cuò)誤日志存盤。
保存臨時(shí)文件。(很多程序都把這當(dāng)做例程的一部分,因此在用戶界面測(cè)試時(shí)可以不考慮。但是如果磁盤滿,程序仍然會(huì)失效。)
這些情況中的每一個(gè)在矩陣中都有自己單獨(dú)的一行。類似地,如果被測(cè)軟件能夠輸出不同格式的數(shù)據(jù),則每種格式在測(cè)試矩陣中也有自己單獨(dú)的一行,等等。
以下是不成功嘗試文件存盤的一些重要測(cè)試用例大綱:
保存到一個(gè)已滿的本地磁盤。
保存到一個(gè)幾戶已滿的本地磁盤。
保存到一個(gè)寫保護(hù)的本地磁盤。
保存到一個(gè)已滿的局域網(wǎng)磁盤。
保存到一個(gè)幾戶已滿的局域網(wǎng)磁盤。
保存到一個(gè)寫保護(hù)的局域網(wǎng)磁盤。
保存到一個(gè)已滿的遠(yuǎn)程網(wǎng)磁盤。
保存到一個(gè)幾乎已滿的遠(yuǎn)程磁盤。
保存到?jīng)]有權(quán)限寫的文件、目錄或磁盤。
保存到一個(gè)已損壞(I/O錯(cuò)誤)的本地磁盤、局域網(wǎng)磁盤或遠(yuǎn)程磁盤。
保存到一個(gè)未格式化的本地磁盤、局域網(wǎng)磁盤或遠(yuǎn)程網(wǎng)磁盤。
打開文件后把本地磁盤、局域網(wǎng)磁盤或遠(yuǎn)程網(wǎng)磁盤從驅(qū)動(dòng)器中移走。
等待本地磁盤、局域網(wǎng)磁盤或遠(yuǎn)程磁盤在線時(shí)的超時(shí)控制。
在保存到本地磁盤、局域網(wǎng)磁盤或遠(yuǎn)程網(wǎng)磁盤期間創(chuàng)建一個(gè)鍵盤或鼠標(biāo)I/O.
在保存到本地磁盤、局域網(wǎng)磁盤或遠(yuǎn)程網(wǎng)磁盤期間生成某個(gè)其他中斷。
在保存到本地磁盤、局域網(wǎng)磁盤或遠(yuǎn)程網(wǎng)磁盤期間(本地計(jì)算機(jī))斷電。
在保存到本地磁盤、局域網(wǎng)磁盤或遠(yuǎn)程網(wǎng)磁盤期間(驅(qū)動(dòng)器或連接到驅(qū)動(dòng)器上的計(jì)算機(jī))斷電。
為了創(chuàng)建像這樣的大綱,建議至少要召開兩次有同事參加的集體討論。在第一次討論會(huì)上,努力想出針對(duì)被測(cè)對(duì)象(例如輸入字段)或任務(wù)(例如保存文件)的例行測(cè)試過程?;ㄒ粋€(gè)小時(shí)的時(shí)間寫滿很多張紙,然后花一天時(shí)間單獨(dú)整理通過討論會(huì)得到的材料。
為了組織材料,可重新用幾張紙,在每張紙上都寫上主題標(biāo)題,例如“磁盤能力”、“在寫操作期間被中斷”等。在每個(gè)標(biāo)題下,將適合的條目抄過來。最后,每個(gè)條目都會(huì)回歸在一個(gè)主題下,或被放棄。(隨意放棄不明智的提議。)
次日的討論會(huì)討論已經(jīng)分類的測(cè)試項(xiàng)。大家可能會(huì)為“磁盤能力”、“在寫操作期間被中斷”等補(bǔ)充更多的測(cè)試項(xiàng),并提出一些新的主題。在第二次討論會(huì)上得到的測(cè)試項(xiàng)可能會(huì)翻一番,這種情況并不少見。
在第二次討論會(huì)之后,將測(cè)試項(xiàng)排序,把基礎(chǔ)測(cè)試項(xiàng)寫入測(cè)試矩陣中,把不常使用的測(cè)試項(xiàng)寫入第二列表,也可能寫入主矩陣中,也可能放棄。
Nyuyen(2000)提供了測(cè)試矩陣的更多示例。