一酬屉、測(cè)試用例的基本概念
概念 :
測(cè)試用例是由測(cè)試人員在測(cè)試執(zhí)行之前編寫(xiě)的指導(dǎo)測(cè)試過(guò)程的重要文檔韭赘,主要包括:用例編號(hào)、測(cè)試目的柏腻、用例描述纸厉、預(yù)期結(jié)果。編寫(xiě)測(cè)試用例需要參考:
(1)相關(guān)文檔(需求文檔葫盼、用戶(hù)手冊(cè)残腌、開(kāi)發(fā)文檔)
(2)參考已經(jīng)開(kāi)發(fā)出來(lái)的軟件
(3)討論(開(kāi)發(fā)、需求、用戶(hù))設(shè)計(jì)測(cè)試用例的方法
(1)等價(jià)類(lèi)劃分法
(2)邊界值法
(3)因果圖法
(4)判定表法
(5)正交排列法
(6)場(chǎng)景法
(7)測(cè)試大綱法
(8)狀態(tài)轉(zhuǎn)換圖法
在目前實(shí)際應(yīng)用中抛猫,使用較多的是等價(jià)類(lèi)劃分法蟆盹、邊界值法、場(chǎng)景法三種方法闺金。
二逾滥、等價(jià)類(lèi)劃分法
- 應(yīng)用場(chǎng)合:
只要有數(shù)據(jù)輸入的地方,就可以采用等價(jià)類(lèi)劃分方法败匹。按照需求寨昙,把無(wú)窮多的數(shù)據(jù)進(jìn)行分類(lèi),從中挑選出代表性數(shù)據(jù)進(jìn)行測(cè)試掀亩。
2.測(cè)試思想:
窮舉測(cè)試是最全面的測(cè)試舔哪,但是時(shí)間成本太高,在實(shí)際中不能采用槽棍,等價(jià)類(lèi)劃分法就是在保證測(cè)試質(zhì)量的同時(shí)捉蚤,使用最小的成本達(dá)到最大的覆蓋。不做窮舉測(cè)試(或者說(shuō)遺漏一些測(cè)試數(shù)據(jù))炼七,是存在風(fēng)險(xiǎn)的缆巧,所以如果時(shí)間允許的話,可以適當(dāng)?shù)难a(bǔ)充豌拙。
- 核心概念
(1)有效等價(jià)類(lèi):對(duì)程序規(guī)格有意義陕悬、合理的輸入數(shù)據(jù)集合。
- 程序接收到有效等價(jià)類(lèi)數(shù)據(jù)按傅,應(yīng)該正確計(jì)算捉超、執(zhí)行————驗(yàn)證軟件功能是否實(shí)現(xiàn)
(2)無(wú)效等價(jià)類(lèi):對(duì)程序規(guī)格無(wú)意義、不合理的輸入數(shù)據(jù)集合逞敷。
- 程序接收到無(wú)效等價(jià)類(lèi)數(shù)據(jù)狂秦,應(yīng)該給出錯(cuò)誤提示或者根本不允許輸入————驗(yàn)證軟件的異常處理能力(健壯性)
4.如何劃分
首先要明確測(cè)試對(duì)象——“第一個(gè)數(shù)”文本框。
說(shuō)明:
在測(cè)試第一個(gè)數(shù)的時(shí)候推捐,要保證第二個(gè)數(shù)為正確的裂问。
例:輸入-99到99之間的整數(shù)
(1)根據(jù)需求,劃分等價(jià)類(lèi)
- 有效等價(jià)類(lèi):
-99—99 的整數(shù) - 無(wú)效等價(jià)類(lèi):
A牛柒、<-99的整數(shù)
B堪簿、>99的整數(shù)
(2)細(xì)化等價(jià)類(lèi)
依據(jù)的一般不是顯式的需求,而是根據(jù)數(shù)據(jù)在內(nèi)存中的存儲(chǔ)方式或數(shù)據(jù)類(lèi)型等皮壁。
整數(shù)在計(jì)算機(jī)中采用補(bǔ)碼方式存儲(chǔ)椭更,正數(shù)和負(fù)數(shù)的補(bǔ)碼方式不同,所以有必要把其分開(kāi)測(cè)試蛾魄。
- 有效等價(jià)類(lèi):
A虑瀑、-99—0 的整數(shù)
B湿滓、0—99的整數(shù) - 無(wú)效等價(jià)類(lèi):
A、小數(shù)
B舌狗、字符
C叽奥、漢字
D、符號(hào)
E痛侍、<-99的整數(shù)
F朝氓、>99的整數(shù)
(3)建立等價(jià)類(lèi)表(熟練后,直接做這步)
(4)編寫(xiě)用例
從每個(gè)等價(jià)類(lèi)中至少挑選一個(gè)代表數(shù)據(jù)進(jìn)行測(cè)試即可主届。
- 提示
一般來(lái)講赵哲,有效等價(jià)類(lèi)較少,并且通尘。可以以從需求字面中得到枫夺。 無(wú)效等價(jià)類(lèi)較多(一般為有效等價(jià)類(lèi)的2-5倍),并且找起來(lái)較為困難谈截。這個(gè)規(guī)律滿(mǎn)足程序代碼原理筷屡,一個(gè)功能實(shí)現(xiàn)的代碼要比異常處理的代碼要少涧偷。
三簸喂、邊界值法
- 應(yīng)用場(chǎng)合:
只要有數(shù)據(jù)輸入的地方,一般可以使用燎潮。邊界值法和等價(jià)類(lèi)劃分法往往一起使用喻鳄,共同形成一套較為完善的測(cè)試方案。
2.測(cè)試思想:
找到有效數(shù)據(jù)和無(wú)效數(shù)據(jù)的分界點(diǎn)(最小值和最大值)确封,對(duì)分界點(diǎn)及其兩邊的點(diǎn)(次邊界值)單獨(dú)進(jìn)行測(cè)試除呵。邊界值數(shù)據(jù)本質(zhì)上屬于等價(jià)類(lèi)范疇,但是需要單獨(dú)測(cè)試爪喘,這是一種冗余颜曾,但在工程中是必要的。
- 如何劃分
例如秉剑,輸入6-16位的英文
有效數(shù)據(jù)和無(wú)效數(shù)據(jù)的分界點(diǎn)就是6位(最小值)和16位(最大值)泛豪,次邊界值就是6左右兩邊的5位和7位,16左右兩邊的15位和17位。
四侦鹏、場(chǎng)景法
- 應(yīng)用場(chǎng)合
(1)在一個(gè)界面中诡曙,沒(méi)有太多填寫(xiě)項(xiàng)(甚至沒(méi)有),所有操作都是通過(guò)鼠標(biāo)的單擊略水、雙擊价卤、拖拽等完成——適合采用場(chǎng)景法的界面特點(diǎn)
(2)軟件的業(yè)務(wù)邏輯具有有一定的復(fù)制性或者具有較強(qiáng)的行業(yè)特征,測(cè)試人員把自己當(dāng)成最終的用戶(hù)渊涝,盡量模擬出用戶(hù)所有重要的操作慎璧,可以分成兩大類(lèi):
A床嫌、模擬用戶(hù)正確的操作——驗(yàn)證軟件的業(yè)務(wù)邏輯、主要功能是否實(shí)現(xiàn)(正常流)
B胸私、模擬用戶(hù)錯(cuò)誤的操作——驗(yàn)證軟件的異常處理能力(異常流)
2.測(cè)試思路:
場(chǎng)景法主要基于兩個(gè)層面:
(1)業(yè)務(wù)(需求)層面:要求測(cè)試人員精通所有測(cè)試軟件的業(yè)務(wù)邏輯既鞠、主要功能——成為行業(yè)專(zhuān)家
(2)技術(shù)層面場(chǎng)景法基于等價(jià)類(lèi)劃分,模擬用戶(hù)正確的操作——有效等價(jià)類(lèi)盖文;模擬用戶(hù)錯(cuò)誤的操作——無(wú)效等價(jià)類(lèi)
3.如何劃分
(1)基本流(正確流嘱蛋、有效流)——模擬用戶(hù)正確的操作流程
(2)備選流(錯(cuò)誤流、無(wú)效流)——模擬用戶(hù)錯(cuò)誤的操作流程
五五续、實(shí)例
目前階段書(shū)寫(xiě)測(cè)試用例是結(jié)合以上三種方法組成洒敏。
比如一個(gè)測(cè)試注冊(cè)頁(yè)面接口測(cè)試:
對(duì)用戶(hù)名框的要求是“4到16位(中文,字母疙驾,數(shù)字凶伙,下劃線,減號(hào))”
據(jù)此分類(lèi)來(lái)書(shū)寫(xiě)測(cè)試用例它碎。
正常流:就是全字段都按要求輸入有效類(lèi)
異常流:就是用戶(hù)名框依次錄入無(wú)效類(lèi)函荣,其它框需要保持正確。
六扳肛、根據(jù)測(cè)試思路分析需求
七傻挂、軟件生命周期
軟件生命周期,是軟件的產(chǎn)生直到報(bào)廢或停止使用的生命周期挖息。
- 問(wèn)題定義金拒。要求系統(tǒng)分析員與用戶(hù)進(jìn)行交流,弄清“用戶(hù)需要計(jì)算機(jī)解決什么問(wèn)題”然后提出關(guān)于“系統(tǒng)目標(biāo)與范圍的說(shuō)明”套腹,提交用戶(hù)審查和確認(rèn)绪抛。
- 可行性研究。一方面在于把待開(kāi)發(fā)的系統(tǒng)的目標(biāo)以明確的語(yǔ)言描述出來(lái)电禀,另一方面從經(jīng)濟(jì)幢码、技術(shù)、法律等多方面進(jìn)行可行性分析尖飞。
- 需求分析症副。弄清用戶(hù)對(duì)軟件系統(tǒng)的全部需求,編寫(xiě)需求規(guī)格說(shuō)明書(shū)(PRD)和初步的用戶(hù)手冊(cè)葫松,提交評(píng)審瓦糕。
- 開(kāi)發(fā)階段。由架構(gòu)師進(jìn)行系統(tǒng)詳細(xì)設(shè)計(jì)腋么,出具系統(tǒng)詳細(xì)設(shè)計(jì)說(shuō)明書(shū)(LLD)咕娄,接著進(jìn)行系統(tǒng)概要設(shè)計(jì),出具系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)(HLD)珊擂。再由開(kāi)發(fā)人員根據(jù)LLD圣勒、HLD敲代碼费变。
- 測(cè)試階段。對(duì)寫(xiě)好的代碼進(jìn)行測(cè)試圣贸,分為單元測(cè)試(UT測(cè)試)挚歧、集成測(cè)試(IT測(cè)試)、系統(tǒng)測(cè)試(ST測(cè)試)吁峻、驗(yàn)收測(cè)試(UAT測(cè)試)滑负。
- 單元測(cè)試(UT測(cè)試):對(duì)開(kāi)發(fā)人員寫(xiě)的一個(gè)方法進(jìn)行測(cè)試。
- 集成測(cè)試(IT測(cè)試):對(duì)幾個(gè)方法或者一個(gè)模塊進(jìn)行測(cè)試用含。
- 系統(tǒng)測(cè)試(ST測(cè)試):對(duì)整個(gè)系統(tǒng)進(jìn)行測(cè)試矮慕。
- 驗(yàn)收測(cè)試(UAT測(cè)試):如果自己就職甲方公司,就自己的測(cè)試員來(lái)進(jìn)行驗(yàn)收啄骇,如果是外包痴鳄,就由客戶(hù)方來(lái)驗(yàn)收。
- 維護(hù)階段缸夹。當(dāng)項(xiàng)目上線后痪寻,就要對(duì)其進(jìn)行維護(hù)。