軟件測(cè)試 | 如何編寫測(cè)試用例?
測(cè)試用例(TestCase)是為特定的測(cè)試目的而設(shè)計(jì)的一組測(cè)試輸入、執(zhí)行條件和預(yù)期結(jié)果的文檔。它的作用是為了測(cè)試系統(tǒng)功能是否滿足用戶某個(gè)特定需求。測(cè)試用例是指導(dǎo)測(cè)試人員工作的依據(jù)。
為什么要寫測(cè)試用例?
是測(cè)試工作的指導(dǎo),是軟件測(cè)試質(zhì)量穩(wěn)定的根本保障,評(píng)估測(cè)試結(jié)果的基準(zhǔn)。
有一份用例來指導(dǎo)測(cè)試執(zhí)行,可以在測(cè)試人員疲累的時(shí)候起到一個(gè)牽引作用。
編寫用例的過程中,通過熟悉需求,對(duì)系統(tǒng)架構(gòu)或業(yè)務(wù)有更深入理解
可避免測(cè)試背鍋
1.測(cè)試用例的組成
標(biāo)準(zhǔn)的測(cè)試用例通常是由以下幾個(gè)模塊組成。
測(cè)試用例編號(hào):測(cè)試用例的唯一標(biāo)識(shí)。
模塊:標(biāo)明被測(cè)需求具體屬于系統(tǒng)中哪個(gè)模塊,這是為了更好地識(shí)別及維護(hù)測(cè)試用例。
測(cè)試用例標(biāo)題:又稱為測(cè)試點(diǎn),就是用一句話描述測(cè)試用例的關(guān)注點(diǎn),每一條測(cè)試用例對(duì)應(yīng)的測(cè)試目的。
優(yōu)先級(jí):根據(jù)需求的優(yōu)先級(jí)別來定義,高優(yōu)先級(jí)的測(cè)試用例要覆蓋核心業(yè)務(wù)、重要特性,以及使用頻率比較高的系統(tǒng)功能部分。
前提條件:測(cè)試用例在執(zhí)行之前需要滿足的一些條件,否則測(cè)試用例無法執(zhí)行,例如,一些測(cè)試環(huán)境或者需要提前執(zhí)行的操作。
測(cè)試數(shù)據(jù):在執(zhí)行測(cè)試用例時(shí),需要輸入一些外部數(shù)據(jù)來完成測(cè)試,這些數(shù)據(jù)根據(jù)測(cè)試用例的統(tǒng)計(jì)情況來確定,有參數(shù)、文件或者數(shù)據(jù)庫記錄等數(shù)據(jù)。
測(cè)試步驟:測(cè)試用例執(zhí)行的步驟描述,測(cè)試用例的使用人員可以根據(jù)測(cè)試步驟完成測(cè)試的執(zhí)行。
期望結(jié)果:是測(cè)試用例中最重要的部分,主要是用來判斷被測(cè)對(duì)象是否運(yùn)行正常。
實(shí)際結(jié)果:結(jié)果一般有通過、失敗和未執(zhí)行。
2.測(cè)試用例優(yōu)先級(jí)
在實(shí)際工作中,測(cè)試人員根據(jù)系統(tǒng)需求會(huì)把測(cè)試用例劃分不同的等級(jí)。
P0:核心功能測(cè)試用例(冒煙測(cè)試),確定此版本是否可用測(cè)的測(cè)試用例,此部分測(cè)試用例的結(jié)果如果是FAIL(失?。?,其他測(cè)試用例就可以不用執(zhí)行了,需要把程序退回去給開發(fā)人員修改,然后再重新提測(cè)。
P1:高優(yōu)先級(jí)測(cè)試用例,最常執(zhí)行的測(cè)試用例,測(cè)試系統(tǒng)功能是否穩(wěn)定,它包含基本功能測(cè)試和重要的錯(cuò)誤、邊界測(cè)試。
P2:中優(yōu)先級(jí)測(cè)試用例,用以更全面地驗(yàn)證系統(tǒng)功能的各個(gè)方面,包含異常、邊界、中斷、網(wǎng)絡(luò)、容錯(cuò)、UI等的測(cè)試用例。
P3:低優(yōu)先級(jí)測(cè)試用例,不常被執(zhí)行,一般包含性能、壓力、兼容性、安全、可用性等的測(cè)試用例。不同的公司可能對(duì)測(cè)試用例的等級(jí)劃分有所差異,但基本上大同小異。
3.測(cè)試用例的作用?
寫測(cè)試用例能帶來的哪些好處呢?
首先,測(cè)試用例可以幫助測(cè)試人員做到心中有數(shù),在測(cè)試用例的指導(dǎo)下,測(cè)試人員不會(huì)在一個(gè)測(cè)試點(diǎn)上重復(fù)測(cè)好多次,同時(shí)也避免漏掉測(cè)試點(diǎn)。而且測(cè)試人員在測(cè)試用例中可以將測(cè)試數(shù)據(jù)提前準(zhǔn)備好,這樣就不會(huì)漏掉一些重要的數(shù)據(jù)了。
其次,測(cè)試用例的執(zhí)行結(jié)果也是評(píng)估測(cè)試結(jié)果的度量基準(zhǔn)。如果設(shè)計(jì)全面覆蓋需求的測(cè)試用例都執(zhí)行通過了,發(fā)現(xiàn)的系統(tǒng)問題全部修改了,程序員即可放心地把應(yīng)用程序交付給客戶使用。
再次,測(cè)試用例也是分析缺陷的標(biāo)準(zhǔn)。因?yàn)闇y(cè)試用例中會(huì)詳細(xì)描述期望結(jié)果,這個(gè)期望結(jié)果其實(shí)就是分析系統(tǒng)中是不是有Bug的一個(gè)標(biāo)準(zhǔn)。測(cè)試用例執(zhí)行后反向的結(jié)果和預(yù)期結(jié)果一致的,就說明系統(tǒng)沒有Bug;反之,和預(yù)期結(jié)果不一致,就是系統(tǒng)存在Bug,需要開發(fā)人員對(duì)Bug進(jìn)行修復(fù)。
4.測(cè)試用例設(shè)計(jì)工具
在寫測(cè)試用例的時(shí)候,測(cè)試人員可以使用思維導(dǎo)圖把待測(cè)的系統(tǒng)模塊和測(cè)試用例的設(shè)計(jì)思路理清楚。思維導(dǎo)圖完成之后就可以對(duì)測(cè)試用例進(jìn)行評(píng)審,評(píng)審?fù)戤吅?,測(cè)試用例有需要修改的地方可以在思維導(dǎo)圖上直接修改。
如果團(tuán)隊(duì)要求測(cè)試人員用表格的方式去寫測(cè)試用例,可以再把思維導(dǎo)圖中的測(cè)試思路轉(zhuǎn)化為表格形式。