測試案例設(shè)計(jì)3_第1頁
測試案例設(shè)計(jì)3_第2頁
測試案例設(shè)計(jì)3_第3頁
測試案例設(shè)計(jì)3_第4頁
測試案例設(shè)計(jì)3_第5頁
已閱讀5頁,還剩71頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

測試案例設(shè)計(jì)課程概覽課程名稱測試案例設(shè)計(jì)基本描述本課程主要講解測試案例設(shè)計(jì)活動(dòng),包括測試案例的基本概念,測試案例的設(shè)計(jì)方法,測試案例的設(shè)計(jì)策略,以及測試案例的設(shè)計(jì)流程等幾個(gè)部分。課程目標(biāo):

了解測試案例的概念和目的了解測試案例的常用設(shè)計(jì)方法了解測試案例設(shè)計(jì)的策略了解測試案例的設(shè)計(jì)流程主要學(xué)習(xí)內(nèi)容/要點(diǎn):測試案例概念測試案例設(shè)計(jì)方法測試案例設(shè)計(jì)策略測試案例設(shè)計(jì)流程目標(biāo)人群和課程時(shí)間:信息體系級測試人員課程類型:課堂培訓(xùn)時(shí)長:4小時(shí)授課要求和課程特色:人數(shù)要求:無

分組要求:無

案例要求:無

提前需要學(xué)習(xí)的內(nèi)容要求:無完成本課程的學(xué)習(xí)之后,你能夠:

了解測試案例的概念了解測試案例的設(shè)計(jì)方法

了解測試案例設(shè)計(jì)策略了解測試案例設(shè)計(jì)流程課程目標(biāo)培訓(xùn)日程安排培訓(xùn)主題時(shí)間時(shí)長授課講師第一部分:課件講解2hours第二部分:練習(xí)2hours第三部分:XXX第四部分:XXX注:如課程由多個(gè)相對獨(dú)立、可分時(shí)講授的部分組成,可就各部分使用獨(dú)立的PPT或文件,通過課程表或培訓(xùn)日程安排說明清楚各部分的順序及關(guān)系培訓(xùn)主題第一部分:測試案例基礎(chǔ)概念第二部分:測試案例設(shè)計(jì)方法第三部分:測試案例設(shè)計(jì)策略第四部分:測試案例設(shè)計(jì)流程軟件測試的定義:軟件測試是在規(guī)定的條件下對程序進(jìn)行操作,以發(fā)現(xiàn)錯(cuò)誤,對軟件質(zhì)量進(jìn)行評估即軟件測試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程。軟件測試的目的:不僅是為了發(fā)現(xiàn)軟件缺陷與錯(cuò)誤,是軟件質(zhì)量保證的關(guān)鍵,是對軟件質(zhì)量進(jìn)行度量與評估,判斷風(fēng)險(xiǎn),以提高軟件質(zhì)量軟件測試所有的測試活動(dòng)集中在以下四個(gè)方面測試需求分析(RTVM)測試案例設(shè)計(jì)(測試案例)測試案例執(zhí)行(測試執(zhí)行跟蹤表)測試結(jié)果分析(測試報(bào)告)測試案例設(shè)計(jì)和編寫直接影響到測試的有效性和效率本課程主要介紹黑盒測試案例設(shè)計(jì)方法,包括用例場景法、等價(jià)類劃分法、邊界值分析法、決策表分析法、正交陣列設(shè)計(jì)法等。其中重點(diǎn)介紹用例場景法。這些設(shè)計(jì)方法是測試中比較常用的,但具體采用哪種方法,要針對開發(fā)項(xiàng)目的特點(diǎn)選擇適當(dāng)?shù)姆椒āy試活動(dòng)

因?yàn)槲覀儾豢赡苓M(jìn)行窮舉測試,為了節(jié)省時(shí)間和資源、提高測試效率,必須要從數(shù)量極大的可用測試數(shù)據(jù)中精挑細(xì)選出具有代表性或特殊性的數(shù)據(jù)來進(jìn)行測試。

使用測試案例的好處包括下面四個(gè)方面:在開始實(shí)施測試之前設(shè)計(jì)好測試案例,可以避免盲目測試并提高測試效率。測試案例的使用令軟件測試的實(shí)施重點(diǎn)突出、目的明確。在軟件版本更新之后只需要修正部分測試案例便可展開測試工作,降低工作強(qiáng)度,縮短項(xiàng)目周期。功能模塊的通用化和復(fù)用化使軟件易于開發(fā),而測試案例的通用化和復(fù)用化則使軟件測試易于開展,并隨著測試案例的不斷優(yōu)化其效率也不斷提升。為什么需要測試案例什么是測試案例測試案例:是為特定的目的而設(shè)計(jì)的一組測試輸入、執(zhí)行條件和預(yù)期結(jié)果。測試案例是執(zhí)行的最小實(shí)體。簡單地說,測試案例就是設(shè)計(jì)一個(gè)場景,使軟件程序在這種場景下,必須能夠正常運(yùn)行并且達(dá)到程序所設(shè)計(jì)的執(zhí)行結(jié)果。

編寫測試案例的思路是什么測試案例是為特定的目的而設(shè)計(jì)的一組測試輸入、執(zhí)行條件和預(yù)期結(jié)果。測試案例是執(zhí)行的最小實(shí)體。簡單地說,測試案例就是設(shè)計(jì)一個(gè)場景,使軟件程序在這種場景下,必須能夠正常運(yùn)行并且達(dá)到程序所設(shè)計(jì)的執(zhí)行結(jié)果。測試目標(biāo)操作步驟和測試數(shù)據(jù)前提條件測試的期望結(jié)果是測試執(zhí)行的最小實(shí)體設(shè)計(jì)測試場景以滿足需求測試案例的代表性:能夠代表并覆蓋各種合理的和不合理、合法的和非法的、邊界的和越界的、以及極限的輸入數(shù)據(jù)、操作和環(huán)境設(shè)置等測試結(jié)果的可判定性:測試案例執(zhí)行結(jié)果的正確性是可判定的,每一個(gè)測試案例都應(yīng)有相應(yīng)的期望結(jié)果測試結(jié)果的可再現(xiàn)性:同樣的測試案例,系統(tǒng)的執(zhí)行結(jié)果應(yīng)當(dāng)是相同的設(shè)計(jì)測試案例的原則設(shè)計(jì)測試案例時(shí)要考慮:簡潔性:清晰明了,即不拖沓冗長,也不過于簡單難以執(zhí)行完整性:編寫的案例要對系統(tǒng)(產(chǎn)品)有足夠的覆蓋有效性:較少的案例覆蓋較多的測試區(qū)域,對于發(fā)現(xiàn)缺陷最有作用唯一性:每條測試案例都有唯一的測試目的可維護(hù)性:測試案例便于更新和維護(hù)測試案例的特點(diǎn)

為什么要進(jìn)行測試案例的分級管理:在項(xiàng)目的生命周期里,在每一個(gè)版本上都執(zhí)行你全部的測試案例是很困難的。但是你如何知道哪個(gè)測試案例必須在每一個(gè)版本中執(zhí)行,什么應(yīng)該被執(zhí)行,同時(shí)如果你有時(shí)間的話,什么又可以被執(zhí)行?在快速組織測試案例、安排測試進(jìn)度和工作量、制訂項(xiàng)目計(jì)劃時(shí)需要完成哪些測試案例等方面,測試案例的分級管理可以給你很多幫助。怎樣劃分測試案例優(yōu)先級和如何執(zhí)行測試案例取決于你在你的項(xiàng)目周期的位置。當(dāng)你在測試進(jìn)行的過程中,通過分析和度量,發(fā)現(xiàn)風(fēng)險(xiǎn)和缺陷集中出現(xiàn)的地方時(shí),你可能會(huì)調(diào)整你的測試案例優(yōu)先級別。這樣會(huì)讓你的測試目標(biāo)和測試重點(diǎn)變得更清晰。擁有劃分了優(yōu)先級別的測試案例,也為你潛在的,待定的自動(dòng)化項(xiàng)目給出了一個(gè)好的起點(diǎn)。比如,自動(dòng)化BVT(版本確認(rèn)測試,又叫冒煙測試)中的測試案例,用于持續(xù)集成的自動(dòng)化驗(yàn)收;或者自動(dòng)化高、中優(yōu)先級的測試案例,用于全量的功能自動(dòng)化測試。測試案例的分級管理IEEE定義的標(biāo)準(zhǔn)的測試案例優(yōu)先級如下:版本確認(rèn)測試(BuildVerificationTests(BVTs):也叫做“冒煙測試”,一組你想優(yōu)先運(yùn)行以確定版本是否可以測試的測試案例。如果你不能訪問每一個(gè)功能區(qū)域或執(zhí)行其他測試案例依賴的基本操作,那么在執(zhí)行這組測試案例之前,試圖做其他任何的測試都是沒有意義的,因?yàn)樗麄兇蠖鄶?shù)肯定要失敗。高(Highs):最常執(zhí)行以保證功能穩(wěn)定的,目標(biāo)的行為和能力可以正常的工作,以及重要的錯(cuò)誤和邊界被測試的測試案例的集合。中(Mediums):這是使給出的功能區(qū)域或功能變得更詳細(xì),檢查功能的多數(shù)方面包括邊界值,等價(jià)類,錯(cuò)誤和配置測試的測試案例低(Lows):這是通常最少被執(zhí)行的測試案例。但這并不意味著這些測試都不重要,只是說他們在項(xiàng)目的生命期間里不是常常被運(yùn)行,例如GUI、錯(cuò)誤信息、可用性、穩(wěn)定性、易用性、壓力測試和性能測試。測試案例的分級管理2我們公司對測試案例的分級管理:Level0:基本的功能性驗(yàn)證(或基本路徑(BasicPath))的測試案例,以及少量重要的錯(cuò)誤、邊界值或重要的路徑分支。適用于做確認(rèn)測試(BVT),比例為15-20%;Level1:對基本功能或基本路徑的擴(kuò)充,包含錯(cuò)誤、邊界值、等價(jià)類、路徑分支等測試案例。適用于全量覆蓋完整的需求功能點(diǎn),比例為60-70%;Level2:非功能性的(例如錯(cuò)誤信息、可用性、穩(wěn)定性、易用性、壓力測試和性能測試)測試案例。適用于輔助完善測試覆蓋,比例為10-15%。測試案例的分級管理3易用性。對于一個(gè)即不熟悉測試工作,又不熟悉被測應(yīng)用的測試人員,只需花費(fèi)很少的時(shí)間就可以理解測試案例中表達(dá)的測試思路,并可以很快的執(zhí)行完成易維護(hù)性。當(dāng)開發(fā)過程中的某些因素影響了測試需求,測試案例的作者或其他測試設(shè)計(jì)人員,應(yīng)該可以花費(fèi)很少的時(shí)間就完成定位并維護(hù)所有相關(guān)測試案例的工作如何評價(jià)測試案例的好壞培訓(xùn)主題第一部分:測試案例基礎(chǔ)概念第二部分:測試案例設(shè)計(jì)方法第三部分:測試案例設(shè)計(jì)策略第四部分:測試案例設(shè)計(jì)流程測試階段劃分如下:

單元測試(UnitTesting)集成測試(IntegrationTesting)系統(tǒng)測試(SystemTesting)系統(tǒng)集成測試(SystemIntegrationTesting)用戶驗(yàn)收測試(UserAcceptTesting)測試階段測試方法分類如下:

靜態(tài)測試(不運(yùn)行被測程序)

評審、走查、審查、桌面檢查

動(dòng)態(tài)測試(運(yùn)行被測程序)

白盒測試、黑盒測試、錯(cuò)誤猜測測試方法

白盒測試(是通過程序的源代碼進(jìn)行測試而不使用用戶界面)白盒測試介紹

黑盒測試(已經(jīng)實(shí)現(xiàn)的功能是否符合要求)黑盒測試介紹

場景法等價(jià)類邊界值因果圖判定表正交陣列隨機(jī)測試測試案例的常用編寫方法

場景法適用于什么樣的項(xiàng)目?業(yè)務(wù)流程或事件比較復(fù)雜的程序,主要用來探索對于比較有經(jīng)驗(yàn)的用戶是怎么來使用軟件的,并查找出更加有說服力的bug。不同的觸發(fā)順序和處理結(jié)果形成事務(wù)流,通過設(shè)計(jì)足夠多的測試用例來覆蓋基本流和各種備選流(如oa請假系統(tǒng))場景法一般包含基本流和備選流來完成整個(gè)場景,下圖展示了場景法基本情況的一個(gè)實(shí)例圖

基本流:采用直黑線表示,是經(jīng)過用例的最簡單路徑(開始直接執(zhí)行到結(jié)束)

備選流:采用不同顏色表示,一個(gè)備選流可能從基本流開始,在某個(gè)特定條件下執(zhí)行,然后重新加入基本流;也可以起源于另一個(gè)備選流,或終止用例,不再加入到基本流中(各種錯(cuò)誤情況)場景法-1場景法的基本設(shè)計(jì)步驟:根據(jù)說明,描述出程序的基本流及各項(xiàng)備選流根據(jù)基本流和各項(xiàng)備選流生成不同的場景對每一個(gè)場景生成相應(yīng)的測試案例對生成的所有的測試案例重新復(fù)審,去掉多余的測試案例,測試案例確定后,對每個(gè)測試案例確定測試數(shù)據(jù)值舉例:用戶進(jìn)入一個(gè)網(wǎng)站進(jìn)行手機(jī)充值,需要登錄賬號,登錄成功后,進(jìn)行付錢交易,交易成功后,完成充值步驟1,確定基本流和備選流場景法-2基本流打開該網(wǎng)站,登錄賬號,輸入需要充值的手機(jī)號,付錢交易,充值成功備選流1登錄賬號或者密碼輸入錯(cuò)誤備選流2登錄賬號狀態(tài)異常備選流3需要充值的手機(jī)號碼輸入非法備選流4賬號余額不足步驟2,根據(jù)基本流和備選流來確定場景場景法-3場景1-成功完成充值基本流場景2-登錄賬戶或者密碼輸入錯(cuò)誤基本流備選流1場景3-登錄賬戶狀態(tài)異?;玖鱾溥x流2場景4-充值手機(jī)號輸入不正確基本流備選流3場景5-賬戶余額不足基本流備選流4步驟3,設(shè)計(jì)測試案例場景法-4案例ID場景/條件賬號密碼手機(jī)號碼賬戶余額預(yù)期結(jié)果1場景1:成功完成手機(jī)充值YYYY成功充值2場景2:登錄賬號錯(cuò)誤N---提示賬號不存在3場景2:登錄密碼錯(cuò)誤YN--提示密碼輸入錯(cuò)誤4場景3:登錄賬號狀態(tài)異常NY--提示賬號狀態(tài)異常5場景4:充值手機(jī)號輸入不正確YYN-提示手機(jī)號碼輸入不正確6場景5:賬戶余額不足YYYN提示賬戶余額不足步驟4設(shè)計(jì)數(shù)據(jù),把數(shù)據(jù)填寫入上面的案例表中場景法-5案例ID場景/條件賬號密碼手機(jī)號碼賬戶余額預(yù)期結(jié)果1場景1:成功完成手機(jī)充值Jim123o成功充值2場景2:登錄賬號錯(cuò)誤Tom---提示賬號不存在3場景2:登錄密碼錯(cuò)誤Jim12--提示密碼輸入錯(cuò)誤4場景3:登錄賬號狀態(tài)異常Lily14q--提示賬號狀態(tài)異常5場景4:充值手機(jī)號輸入不正確Jim123ok123-提示手機(jī)號碼輸入不正確6場景5:賬戶余額不足Sam88u137000000000提示賬戶余額不足場景法等價(jià)類邊界值因果圖判定表正交陣列隨機(jī)測試測試案例的常用編寫方法

等價(jià)類劃分是一種典型的黑盒測試方法,用這一方法設(shè)計(jì)測試案例完全不考慮程序的內(nèi)部結(jié)構(gòu),只根據(jù)對程序的需求和說明,即需求規(guī)格說明書。由于窮舉測試工作量太大,以致于無法實(shí)際完成,促使我們在大量的可能數(shù)據(jù)中選取其中的一部分作為測試案例。定義:等價(jià)類比法是把所有可能的輸入數(shù)據(jù),即程序的輸入域劃分成若干部分(子集),然后從每一個(gè)子集中選取少數(shù)具有代表性的數(shù)據(jù)作為測試案例。劃分等價(jià)類:等價(jià)類是指某個(gè)輸入域的子集合。在該子集合中,各個(gè)輸入數(shù)據(jù)對于揭露程序中的錯(cuò)誤都是等效的,并合理地假定:測試某等價(jià)類的代表值就等于對這一類其它值的測試。也就是說,如果某一類中的一個(gè)例子發(fā)現(xiàn)了錯(cuò)誤,這一等價(jià)類中的其他例子也能發(fā)現(xiàn)同樣的錯(cuò)誤;反之,如果某一類中的一個(gè)例子沒有發(fā)現(xiàn)錯(cuò)誤,則這一類中的其他例子也不會(huì)查出錯(cuò)誤。有效等價(jià)類:是指對于程序的規(guī)格說明來說是合理的、有意義的輸入數(shù)據(jù)構(gòu)成的集合。利用有效等價(jià)類可檢驗(yàn)程序是否實(shí)現(xiàn)了規(guī)格說明中所規(guī)定的功能和性能。無效等價(jià)類:與有效等價(jià)類的定義恰巧相反。等價(jià)類-1輸入條件有效等價(jià)類無效等價(jià)類………………劃分等價(jià)類的標(biāo)準(zhǔn):

1)完備測試、避免冗余

2)劃分等價(jià)類重要的是:集合的劃分,劃分為互不相交的一組子集 3)子集的并是整個(gè)集合:完備性 4)子集互不相交:保證一種形式的無冗余性 5)同一類中標(biāo)識(選擇)一個(gè)測試案例,同一等價(jià)類中,往往處理相同,相同處理映射到“相同的執(zhí)行路徑”設(shè)計(jì)測試案例

在確立等價(jià)類后,可建立等價(jià)類表等價(jià)類-2每個(gè)等價(jià)類中只測試一個(gè)值如果由于某種原因需要重復(fù)測試,可以選取測試等價(jià)類中不同的值來測試根據(jù)等價(jià)類表,列出所有劃分出的等價(jià)類輸入條件:有效等價(jià)類、無效等價(jià)類,然后從劃分出的等價(jià)類中按以下三個(gè)原則設(shè)計(jì)測試案例:

1)為每一個(gè)等價(jià)類規(guī)定一個(gè)唯一的編號;

2)設(shè)計(jì)一個(gè)新的測試案例,使其盡可能多地覆蓋尚未被覆蓋地有效等價(jià)類,重復(fù)這一步,直到所有的有效等價(jià)類都被覆蓋為止;

3)設(shè)計(jì)一個(gè)新的測試案例,使其僅覆蓋一個(gè)尚未被覆蓋的無效等價(jià)類,重復(fù)這一步,直到所有的無效等價(jià)類都被覆蓋為止。等價(jià)類-3例1.輸入在0到40之間整數(shù).有效等價(jià)類

無效等價(jià)類0<=X<=40 X<0X>40 0到40之間的非整數(shù)

字母、漢字、特殊字符例2.

第一個(gè)字符是字母.有效等價(jià)類

無效等價(jià)類26個(gè)字母中的任何一個(gè) 特殊字符 數(shù)字字符

漢字字符等價(jià)類-4(舉例)根據(jù)下面給出的規(guī)格說明,利用等價(jià)類劃分的方法,給出足夠的測試案例?!耙粋€(gè)程序讀入3個(gè)整數(shù),把這三個(gè)數(shù)值看作一個(gè)三角形的3條邊的長度值。這個(gè)程序要打印出信息,說明這個(gè)三角形是不等邊的、是等腰的、還是等邊的?!钡葍r(jià)類-練習(xí)我們可以設(shè)三角形的3條邊分別為A,B,C。如果它們能夠構(gòu)成三角形的3條邊,必須滿足:A>0,B>0,C>0,且A+B>C,B+C>A,A+C>B。如果是等腰的,還要判斷A=B,或B=C,或A=C。如果是等邊的,則需判斷是否A=B,且B=C,且A=C。請畫出等價(jià)類表等價(jià)類-練習(xí)輸入條件有效等價(jià)類無效等價(jià)類是否三角形的三條邊(A>0),(1)(B>0),(2)(C>0),(3)(A+B>C),(4)(B+C>A),(5)(A+C>B),(6)(A≤0),(7)(B≤0),(8)(C≤0),(9)(A+B≤C),(10)(B+C≤A),(11)(A+C≤B),(12)是否等腰三角形(A=B),(13)(B=C),(14)(C=A),(15)(A≠B)and(B≠C)and(C≠A),(16)是否等邊三角形(A=B)and(B=C)and(C=A),(17)(A≠B),(18)(B≠C),(19)(C≠A),(20)等價(jià)類-練習(xí)序號【A,B,C】覆蓋等價(jià)類輸出1【3,4,5】(1),(2),(3),(4),(5),(6)一般三角形2【0,1,2】(7)不能構(gòu)成三角形3【1,0,2】(8)4【1,2,0】(9)5【1,2,3】(10)6【1,3,2】(11)7【3,1,2】(12)8【3,3,4】(1),(2),(3),(4),(5),(6),(13)等腰三角形9【3,4,4】(1),(2),(3),(4),(5),(6),(14)10【3,4,3】(1),(2),(3),(4),(5),(6),(15)11【3,4,5】(1),(2),(3),(4),(5),(6),(16)非等腰三角形12【3,3,3】(1),(2),(3),(4),(5),(6),(17)是等邊三角形13【3,4,4】(1),(2),(3),(4),(5),(6),(14),(18)非等邊三角形14【3,4,3】(1),(2),(3),(4),(5),(6),(15),(19)15【3,3,4】(1),(2),(3),(4),(5),(6),(13),(20)等價(jià)類-練習(xí)場景法等價(jià)類邊界值因果圖判定表正交陣列隨機(jī)測試測試案例的常用編寫方法

定義:邊界值分析法就是對輸入或輸出的邊界值進(jìn)行測試的一種黑盒測試方法。通常邊界值分析法是作為對等價(jià)類劃分法的補(bǔ)充,這種情況下,其測試案例來自等價(jià)類的邊界。

邊界值分析-1與等價(jià)劃分的區(qū)別

1)邊界值分析不是從某等價(jià)類中隨便挑一個(gè)作為代表,而是使用這個(gè)等價(jià)類的每個(gè)邊界都要作為測試條件。

2)邊界值分析不僅考慮輸入條件,還要考慮輸出結(jié)果產(chǎn)生的測試情況。使用邊界值分析方法的原因:長期的測試工作經(jīng)驗(yàn)告訴我們,大量的錯(cuò)誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部。因此針對各種邊界情況設(shè)計(jì)測試案例,可以查出更多的錯(cuò)誤

使用邊界值分析方法設(shè)計(jì)測試案例,首先應(yīng)確定邊界情況。通常輸入和輸出等價(jià)類的邊界,就是應(yīng)著重測試的邊界情況。應(yīng)當(dāng)選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數(shù)據(jù),而不是選取等價(jià)類中的典型值或任意值作為測試數(shù)據(jù)如果輸入條件規(guī)定了值的范圍,則應(yīng)取剛達(dá)到這個(gè)范圍的邊界的值,以及剛剛超越這個(gè)范圍邊界的值作為測試輸入數(shù)據(jù)。如果輸入條件規(guī)定了值的個(gè)數(shù),則用最大個(gè)數(shù)、最小個(gè)數(shù)、比最小個(gè)數(shù)少一、比最大個(gè)數(shù)多一的數(shù)作為測試數(shù)據(jù)。正確的軟件通常應(yīng)該將輸入內(nèi)容默認(rèn)為合法邊界內(nèi)的最小值或者合法區(qū)間內(nèi)某個(gè)合理值,否則返回錯(cuò)誤提示信息。邊界值分析-2舉例:測試密碼是6位到16位之間的阿拉伯?dāng)?shù)字等價(jià)類法:x<6;6≤x≤16;x>16邊界值法:5,6,11,16,17邊界值分析-3(練習(xí))5個(gè)測試案例:6位數(shù)字 (Success)5位數(shù)字 (Error)11位數(shù)字 (Success)16位數(shù)字 (Success)17位數(shù)字 (Error)邊界值分析-4(練習(xí))舉例:1<X<10,1<=Y<=10,X與Y都是整數(shù)X邊界值法:?-Y邊界值法:?-X5個(gè)測試案例:

2

(Success)1

(Error)6(Success)9

(Success)10

(Error)-Y5個(gè)測試案例:

1

(Success)0

(Error)6

(Success)10

(Success)11

(Error)邊界值分析-5(練習(xí))場景法等價(jià)類邊界值因果圖判定表正交陣列隨機(jī)測試測試案例的常用編寫方法

等價(jià)類劃分法和邊界值分析方法都是著重考慮輸入條件,但是沒有考慮輸入條件的各種組合、輸入條件的各種制約關(guān)系。這樣雖然各種輸入條件出錯(cuò)的情況已經(jīng)測試到了,但是多個(gè)輸入條件組合起來可能出錯(cuò)的情況卻被忽視了。

定義:因果圖法是一種利用圖解法分析輸入的各種組合情況,從而設(shè)計(jì)測試案例的方法,它使用于檢查程序輸入條件的各種組合情況。因果圖法一般和判定表法結(jié)合在一起使用因果圖中出現(xiàn)的基本符號因果圖-1因果圖法-2因果圖法-3因果圖法-4舉例程序的規(guī)格說明需求,輸入的第一個(gè)字符必須是“#”或者“*”,第二個(gè)字符必須是一個(gè)阿拉伯?dāng)?shù)字,在此情況下進(jìn)行文件的修改。如果第一個(gè)字符不是“#”或者“*”,則給出信息N;如果第二個(gè)字符不是數(shù)字,則給出信息M步驟1:

分析程序的規(guī)格說明,列出原因和結(jié)果:

原因:c1-第一個(gè)字符是“#”,c2-第一個(gè)字符是“*”,c3-第二個(gè)字符是一

個(gè)阿拉伯?dāng)?shù)字

結(jié)果:a1-給出信息N,a2-修改文件,a3-給出信息M

步驟2:找出原因與結(jié)果之間的因果關(guān)系、原因與原因之間的約束關(guān)系,畫出因果圖 10是中間狀態(tài),輸入字符因果圖法-5舉例步驟3:

將因果圖轉(zhuǎn)換成判定表步驟4:設(shè)計(jì)測試案例

因果圖法-6案例分析有一個(gè)處理單價(jià)為1元5角的盒裝飲料的自動(dòng)售貨機(jī)軟件,若投入1元5角硬幣,按下可樂、雪碧或者紅茶按鈕,相應(yīng)的飲料就送出來。若投入的是兩元硬幣,在送出飲料的同時(shí)退5角硬幣

因果圖法-8案例分析將因果圖轉(zhuǎn)換成判定表場景法等價(jià)類邊界值因果圖判定表正交陣列隨機(jī)測試測試案例的常用編寫方法

定義:判定表(也叫決策表)是分析和表達(dá)多邏輯條件下執(zhí)行不同操作的情況的工具。

判定表的優(yōu)點(diǎn)能夠?qū)?fù)雜的問題按照各種可能的情況全部列舉出來,簡明并避免遺漏。因此,利用判定表能夠設(shè)計(jì)出完整的測試案例集合。在一些數(shù)據(jù)處理問題當(dāng)中,某些操作的實(shí)施依賴于多個(gè)邏輯條件的組合,即:針對不同邏輯條件的組合值,分別執(zhí)行不同的操作。判定表很適合于處理這類問題。判定表-1適合使用判定表設(shè)計(jì)測試案例的條件:規(guī)格說明以判定表形式給出,或很容易轉(zhuǎn)換成判定表?xiàng)l件的排列順序不影響執(zhí)行操作規(guī)則的排列順序不影響執(zhí)行操作每當(dāng)某一規(guī)則的條件已經(jīng)滿足,并確定要執(zhí)行的操作后,不必檢驗(yàn)別的規(guī)則如果某一規(guī)則得到滿足要執(zhí)行多個(gè)操作,這些操作的執(zhí)行順序無關(guān)緊要判定表-2問題要求:”……對功率大于50馬力的機(jī)器、維修記錄不全或已運(yùn)行10年以上的機(jī)器,應(yīng)給予優(yōu)先的維修處理,否則做其他處理……”。這里假定,“維修記錄不全”和“優(yōu)先維修處理”均已在別處有更嚴(yán)格的定義。請建立判定表。1)確定規(guī)則的個(gè)數(shù):這里有3個(gè)條件,每個(gè)條件有兩個(gè)取值,故應(yīng)有2*2*2=8種規(guī)則。2)列出所有的條件茬和動(dòng)作茬:判定表-3判定表-43)填入條件項(xiàng)。(二進(jìn)制的真值表)。4)填入動(dòng)作樁和動(dòng)作頂。這樣便得到形如圖的初始判定表。判定表-5場景法等價(jià)類邊界值因果圖判定表正交陣列隨機(jī)測試測試案例的常用編寫方法

方法簡介利用因果圖來設(shè)計(jì)測試案例時(shí),作為輸入條件的原因與輸出結(jié)果之間的因果關(guān)系,有時(shí)很難從軟件需求規(guī)格說明中得到。往往因果關(guān)系非常龐大,以至于據(jù)此因果圖而得到的測試案例數(shù)目多的驚人,給軟件測試帶來沉重的負(fù)擔(dān),為了有效地,合理地減少測試的工時(shí)與費(fèi)用,可利用正交實(shí)驗(yàn)設(shè)計(jì)方法進(jìn)行測試案例的設(shè)計(jì)。正交實(shí)驗(yàn)設(shè)計(jì)方法:依據(jù)Galois理論,從大量的(實(shí)驗(yàn))數(shù)據(jù)(測試?yán)┲刑暨x適量的,有代表性的點(diǎn)(例),從而合理地安排實(shí)驗(yàn)(測試)的一種科學(xué)實(shí)驗(yàn)設(shè)計(jì)方法.類似的方法有:聚類分析方法,因子方法方法等.正交陣列-1行數(shù)(Runs):正交表中的行的個(gè)數(shù),即實(shí)驗(yàn)的次數(shù),也就是我們通過正交實(shí)驗(yàn)法設(shè)計(jì)的測試案例的個(gè)數(shù)因素?cái)?shù)(Factors):正交表中列的個(gè)數(shù),即我們要測試的功能點(diǎn)因子數(shù)(Levels):任何單個(gè)因素能取得的值的最大個(gè)數(shù)。正交陣列-2場景法等價(jià)類邊界值因果圖判定表正交陣列隨機(jī)測試測試案例的常用編寫方法

經(jīng)驗(yàn)+技術(shù)=專家在軟件測試中除了根據(jù)測試樣例和測試說明書進(jìn)行測試外,還需要進(jìn)行隨機(jī)測試(Ad-hoctesting),主要是根據(jù)測試者的經(jīng)驗(yàn)對軟件進(jìn)行功能和性能抽查。隨機(jī)測試是對案例測試的重要補(bǔ)充手段,是保證測試覆蓋完整性的有效方式和過程。隨機(jī)測試主要是對被測軟件的一些重要功能進(jìn)行復(fù)測,也包括當(dāng)前的測試案例(TestCase)沒有覆蓋到的部分。對于軟件更新和新增的功能要重點(diǎn)測試。尤其對一些特殊情況、特殊使用環(huán)境、并發(fā)性,進(jìn)行檢查。對以前測試發(fā)現(xiàn)的重大Bug,進(jìn)行再次測試,可以結(jié)合回歸測試(Regressivetesting)一起進(jìn)行。隨機(jī)測試培訓(xùn)主題第一部分:測試案例基礎(chǔ)概念第二部分:測試案例設(shè)計(jì)方法第三部分:測試案例設(shè)計(jì)策略第四部分:測試案例設(shè)計(jì)流程測試案例的設(shè)計(jì)方法不是單獨(dú)存在的,具體到每個(gè)測試項(xiàng)目里都會(huì)用到多種方法,每種類型的軟件有各自的特點(diǎn),每種測試案例設(shè)計(jì)的方法也有各自的特點(diǎn),針對不同軟件如何利用這些黑盒方法是非常重要的,在實(shí)際測試中,往往是綜合使用各種方法才能有效提高測試效率和測試覆蓋度,這就需要認(rèn)真掌握這些方法的原理,積累更多的測試經(jīng)驗(yàn),以有效提高測試水平。以下是各種測試方法選擇的綜合策略,可在實(shí)際應(yīng)用過程中參考:首先進(jìn)行等價(jià)類劃分,包括輸入條件和輸出條件的等價(jià)劃分,將無限測試變成有限測試,這是減少工作量和提高測試效率的最有效方法。在任何情況下都必須使用邊界值分析方法。經(jīng)驗(yàn)表明用這種方法設(shè)計(jì)出測試案例發(fā)現(xiàn)程序錯(cuò)誤的能力最強(qiáng)。對照程序邏輯,檢查已設(shè)計(jì)出的測試案例的邏輯覆蓋程度。如果沒有達(dá)到要求的覆蓋標(biāo)準(zhǔn),應(yīng)當(dāng)再補(bǔ)充足夠的測試案例。對于業(yè)務(wù)流清晰的系統(tǒng),可以利用場景法貫穿整個(gè)測試案例過程,在案例中綜合使用各種測試方法。測試案例設(shè)計(jì)方法選擇的綜合策略需求參見確定三個(gè)場景,分三個(gè)分支流程寫(只選顏色,不設(shè)置版式;只設(shè)置版式,不選擇顏色,既選顏色也選版式)場景1,只選顏色,不設(shè)置版式(8條案例)

原因:c1所有商品都是只選顏色,不設(shè)置版式 c2商品處于上架狀態(tài) c3商品不屬于任何簇 c4展示圖片做單選-展示圖片 c5展示圖片做單選-不展示圖片 c6商品編碼輸入合法 c7顏色的名稱不重復(fù)

結(jié)果:a1后臺設(shè)置成功,前臺商品四級頁面顯示簇商品,并且都展示圖片 a2后臺設(shè)置成功,前臺商品四級頁面顯示簇商品,并且展示顏色名稱 a3后臺設(shè)置失敗,提示商品設(shè)置必須一致 a4后臺設(shè)置失敗,提示商品未上架 a5商品設(shè)置失敗,提示商品已經(jīng)屬于其他簇 a6商品設(shè)置失敗,提示商品編碼輸入不合法 a7商品設(shè)置失敗,提示顏色圖片項(xiàng)未選擇 a8商品設(shè)置失敗,提示顏色名稱不能重復(fù)測試案例設(shè)計(jì)方法選擇的綜合策略-舉例

測試案例設(shè)計(jì)方法選擇的綜合策略-舉例

規(guī)則12345678條件樁所有商品都是只選顏色,不設(shè)置版式F—————TT商品處于上架狀態(tài)—F————TT商品不屬于任何簇——F———TF展示圖片做單選-展示圖片———F——FT展示圖片做單選-不展示圖片———F——TT商品編碼輸入合法————F—TT顏色的名稱不重復(fù)—————FTT動(dòng)作樁后臺設(shè)置成功,前臺商品四級頁面顯示簇商品,并且都展示圖片

X后臺設(shè)置成功,前臺商品四級頁面顯示簇商品,并且展示顏色名稱

X

后臺設(shè)置失敗,提示商品設(shè)置必須一致X

后臺設(shè)置失敗,提示商品未上架

X

商品設(shè)置失敗,提示商品已經(jīng)屬于其他簇

X

商品設(shè)置失敗,提示商品編碼輸入不合法

X

商品設(shè)置失敗,提示顏色圖片項(xiàng)未選擇

X

商品設(shè)置失敗,提示顏色名稱不能重復(fù)

X

場景2,只選版式,不選擇顏色(8條案例)

原因:c1所有商品都是只選顏色,不設(shè)置版式 c2商品處于上架狀態(tài) c3商品不屬于任何簇 c4展示圖片做單選-展示圖片 c5展示圖片做單選-不展示圖片 c6商品編碼輸入合法 c7版式的名稱不重復(fù)

結(jié)果:a1后臺設(shè)置成功,前臺商品四級頁面顯示簇商品,并且都展示圖片 a2后臺設(shè)置成功,前臺商品四級頁面顯示簇商品,并且展示顏色名稱 a3后臺設(shè)置失敗,提示商品設(shè)置必須一致 a4后臺設(shè)置失敗,提示商品未上架 a5商品設(shè)置失敗,提示商品已經(jīng)屬于其他簇 a6商品設(shè)置失敗,提示商品編碼輸入不合法 a7商品設(shè)置失敗,提示顏色圖片項(xiàng)未選擇 a8商品設(shè)置失敗,提示版式名稱不能重復(fù)測試案例設(shè)計(jì)方法選擇的綜合策略-舉例場景2,只選版式,不選擇顏色(11條案例)

原因:c1所有商品都是只選顏色,不設(shè)置版式 c2商品處于上架狀態(tài) c3商品不屬于任何簇

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論