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

下載本文檔

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

文檔簡(jiǎn)介

1、測(cè)試用例設(shè)計(jì)方法,測(cè)試用例概念與定義,目 錄,設(shè)計(jì)測(cè)試用例的方法,測(cè)試用例的設(shè)計(jì)過(guò)程,測(cè)試?yán)斫獾恼`區(qū),等價(jià)類(lèi)分法,邊界值分析法,錯(cuò)誤推測(cè)法,因果圖法,什么是測(cè)試用例? 為達(dá)到最佳的測(cè)試效果或高效的揭露隱藏的錯(cuò)誤而精心設(shè)計(jì)的少量測(cè)試數(shù)據(jù),稱之為測(cè)試用例。我們不可能進(jìn)行窮舉測(cè)試為了節(jié)省時(shí)間和資源、提高測(cè)試效率,必須要從數(shù)量極大的可用測(cè)試數(shù)據(jù)中精心挑選出具有代表性或特殊性的測(cè)試數(shù)據(jù)來(lái)進(jìn)行測(cè)試,概念與定義,不完全、不徹底是軟件測(cè)試的致命缺陷, 任何程序只能進(jìn)行少量而有限的測(cè)試。測(cè)試用例在此情況下產(chǎn)生,同時(shí)它也是軟件測(cè)試系統(tǒng)化、工程化的產(chǎn)物。而測(cè)試用例的設(shè)計(jì)一直是軟件測(cè)試工作的重點(diǎn)和難點(diǎn),那么,怎樣的用

2、例算是好用例? 一個(gè)好的測(cè)試用例是在于它能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤,使用測(cè)試用例的好處 在開(kāi)始實(shí)施測(cè)試之前設(shè)計(jì)好測(cè)試用例,可以避免盲目測(cè)試并提高測(cè)試效率。測(cè)試用例的使用令軟件測(cè)試的實(shí)施重點(diǎn)突出、目的明確。在軟件版本更新后只需修正少部分的測(cè)試用例便可展開(kāi)測(cè)試工作,降低工作強(qiáng)度、縮短項(xiàng)目周期。功能模塊的通用化和復(fù)用化使軟件易于開(kāi)發(fā),而相對(duì)于功能模塊的測(cè)試用例的通用化和復(fù)用化則會(huì)使軟件測(cè)試易于開(kāi)展,并隨著測(cè)試用例的不斷精化其效率也不斷攀升,設(shè)計(jì)測(cè)試用例的方法,黑盒測(cè)試: 等價(jià)類(lèi)劃分法 邊界值分析法 錯(cuò)誤推測(cè)法 因果圖法 判定法驅(qū)動(dòng)法 正交試驗(yàn)設(shè)計(jì)法 功能圖分析法 場(chǎng)景設(shè)計(jì)法 白盒測(cè)試: 邏輯覆蓋法 基本

3、路徑測(cè)試法,測(cè)試設(shè)計(jì)員(分析設(shè)計(jì)員)依據(jù)不同階段的測(cè)試計(jì)劃、設(shè)計(jì)模型和實(shí)施模型來(lái)設(shè)計(jì)該階段測(cè)試用例。測(cè)試設(shè)計(jì)員是具有豐富測(cè)試經(jīng)驗(yàn)或具有軟件分析設(shè)計(jì)能力的高級(jí)測(cè)試工程師。如果沒(méi)有測(cè)試設(shè)計(jì)員則可用分析設(shè)計(jì)員代替。針對(duì)白盒,還應(yīng)有驅(qū)動(dòng)程序和樁模塊 ISO 質(zhì)量體系在概要設(shè)計(jì)或詳細(xì)設(shè)計(jì)中應(yīng)明確指出每個(gè)單元模塊的測(cè)試要點(diǎn)、指標(biāo)和方法。 CMM 質(zhì)量體系在系統(tǒng)的用例模型描述中應(yīng)明確指出每個(gè)用例模型的優(yōu)先級(jí)及用例工作流程,每一個(gè)用例模型為一個(gè)測(cè)試點(diǎn)用例模型中每一個(gè)測(cè)試需求至少應(yīng)有兩個(gè)測(cè)試用例,測(cè)試用例的設(shè)計(jì)過(guò)程,CMM(Capability Maturity Model),英文直譯的意思是“能力成熟度模型”

4、。由卡內(nèi)基.梅隆大學(xué)的軟件工程協(xié)會(huì)(Software Engineering Institute, 簡(jiǎn)稱SEI) 提出并完善,目的是通過(guò)一個(gè)合理的體系模型來(lái)對(duì)軟件組織開(kāi)發(fā)能力進(jìn)行合理有效的評(píng)估,幫助軟件組織在模型實(shí)施的過(guò)程中提高軟件過(guò)程管理能力,降低軟件系統(tǒng)開(kāi)發(fā)風(fēng)險(xiǎn),在預(yù)定的項(xiàng)目周期和預(yù)算內(nèi)開(kāi)發(fā)出高質(zhì)量的軟件產(chǎn)品。 CMM一共分為5級(jí),1級(jí)最低,5級(jí)最高,3級(jí)是一個(gè)比較重要的分界線,測(cè)試用例應(yīng)由測(cè)試設(shè)計(jì)員或分析設(shè)計(jì)員來(lái)制定而不是普通的測(cè)試員。 測(cè)試點(diǎn)應(yīng)由分析設(shè)計(jì)員確立,與測(cè)試人員無(wú)關(guān)。 測(cè)試工作展開(kāi)于項(xiàng)目立項(xiàng)后而不是代碼開(kāi)發(fā)完成之后。 測(cè)試對(duì)象不僅僅是源代碼,還包括需求分析、需求規(guī)格說(shuō)明書(shū)、概

5、要設(shè)計(jì)、概要設(shè)計(jì)說(shuō)明書(shū)、詳細(xì)設(shè)計(jì)、詳細(xì)設(shè)計(jì)說(shuō)明書(shū)、使用手冊(cè)等各階段的文檔,測(cè)試?yán)斫獾恼`區(qū),測(cè)試用例設(shè)計(jì)方法之等價(jià)類(lèi)分法(1)_理論知識(shí),I.理論知識(shí) 等價(jià)類(lèi)劃分是一種典型的黑盒測(cè)試方法。這一方法完全不考慮程序的內(nèi)部結(jié)構(gòu),只依據(jù)程序的規(guī)格說(shuō)明來(lái)設(shè)計(jì)測(cè)試用例。 等價(jià)類(lèi)是指某個(gè)輸入域的子集合。在該子集合中,各個(gè)輸入數(shù)據(jù)對(duì)于揭示程序中的錯(cuò)誤都是等效的。 等價(jià)類(lèi)合理地假設(shè):某個(gè)等價(jià)類(lèi)的代表值,與該等價(jià)類(lèi)的其他值,對(duì)于測(cè)試來(lái)說(shuō)是等價(jià)的。 因此,可以把全部的輸入數(shù)據(jù)劃分成若干的等價(jià)類(lèi),在每一個(gè)等價(jià)類(lèi)中取一個(gè)數(shù)據(jù)來(lái)進(jìn)行測(cè)試。這樣就能以較少的具有代表性的數(shù)據(jù)進(jìn)行測(cè)試,而取得較好的測(cè)試效果。 等價(jià)類(lèi)劃分是把所有可

6、能的輸入數(shù)據(jù),即程序的輸入域劃分成若干部分(子集),然后從每一個(gè)子集中選取少數(shù)具有代表性的數(shù)據(jù)作為測(cè)試用例.該方法是一種重要的,常用的黑盒測(cè)試用例設(shè)計(jì)方法,1)分類(lèi): 劃分等價(jià)類(lèi): 等價(jià)類(lèi)是指某個(gè)輸入域的子集合.在該子集合中,各個(gè)輸入數(shù)據(jù)對(duì)于揭露程序中的錯(cuò)誤都是等效的.并合理地假定:測(cè)試某等價(jià)類(lèi)的代表值就等于對(duì)這一類(lèi)其它值的測(cè)試.因此,可以把全部輸入數(shù)據(jù)合理劃分為若干等價(jià)類(lèi),在每一個(gè)等價(jià)類(lèi)中取一個(gè)數(shù)據(jù)作為測(cè)試的輸入條件,就可以用少量代表性的測(cè)試數(shù)據(jù).取得較好的測(cè)試結(jié)果.等價(jià)類(lèi)劃分可有兩種不同的情況:有效等價(jià)類(lèi)和無(wú)效等價(jià)類(lèi). 有效等價(jià)類(lèi):是指對(duì)于程序的規(guī)格說(shuō)明來(lái)說(shuō)是合理的,有意義的輸入數(shù)據(jù)構(gòu)成的

7、集合.利用有效等價(jià)類(lèi)可檢驗(yàn)程序是否實(shí)現(xiàn)了規(guī)格說(shuō)明中所規(guī)定的功能和性能. 無(wú)效等價(jià)類(lèi):與有效等價(jià)類(lèi)的定義恰巧相反. 設(shè)計(jì)測(cè)試用例時(shí),要同時(shí)考慮這兩種等價(jià)類(lèi).因?yàn)?軟件不僅要能接收合理的數(shù)據(jù),也要能經(jīng)受意外的考驗(yàn).這樣的測(cè)試才能確保軟件具有更高的可靠性,測(cè)試用例設(shè)計(jì)方法之等價(jià)類(lèi)分法(1)_理論知識(shí),2):劃分等價(jià)類(lèi)的方法: 六條確定等價(jià)類(lèi)的原則: 在輸入條件規(guī)定了取值范圍或值的個(gè)數(shù)的情況下,則可以確立一個(gè)有效等價(jià)類(lèi)和兩個(gè)無(wú)效等價(jià)類(lèi). 在輸入條件規(guī)定了輸入值的集合或者規(guī)定了“必須如何”的條件的情況下,可確立一個(gè)有效等價(jià)類(lèi)和一個(gè)無(wú)效等價(jià)類(lèi). 在輸入條件是一個(gè)布爾量的情況下,可確定一個(gè)有效等價(jià)類(lèi)和一個(gè)無(wú)

8、效等價(jià)類(lèi). 在規(guī)定了輸入數(shù)據(jù)的一組值(假定n個(gè)),并且程序要對(duì)每一個(gè)輸入值分別處理的情況下,可確立n個(gè)有效等價(jià)類(lèi)和一個(gè)無(wú)效等價(jià)類(lèi). 在規(guī)定了輸入數(shù)據(jù)必須遵守的規(guī)則的情況下,可確立一個(gè)有效等價(jià)類(lèi)(符合規(guī)則)和若干個(gè)無(wú)效等價(jià)類(lèi)(從不同角度違反規(guī)則). 在確知已劃分的等價(jià)類(lèi)中各元素在程序處理中的方式不同的情況下,則應(yīng)再將該等價(jià)類(lèi)進(jìn)一步的劃分為更小的等價(jià)類(lèi),測(cè)試用例設(shè)計(jì)方法之等價(jià)類(lèi)分法(1)_理論知識(shí),3)原則: 設(shè)計(jì)測(cè)試用例:在確立了等價(jià)類(lèi)后,可建立等價(jià)類(lèi)表,列出所有劃分出的等價(jià)類(lèi): 輸入條件 有效等價(jià)類(lèi) 無(wú)效等價(jià)類(lèi). . . . . 然后從劃分出的等價(jià)類(lèi)中按以下三個(gè)原則設(shè)計(jì)測(cè)試用例: 為每一個(gè)等價(jià)

9、類(lèi)規(guī)定一個(gè)唯一的編號(hào). 設(shè)計(jì)一個(gè)新的測(cè)試用例,使其盡可能多地覆蓋尚未被覆蓋地有效等價(jià)類(lèi),重復(fù)這一步.直到所有的有效等價(jià)類(lèi)都被覆蓋為止. 設(shè)計(jì)一個(gè)新的測(cè)試用例,使其僅覆蓋一個(gè)尚未被覆蓋的無(wú)效等價(jià)類(lèi),重復(fù)這一步.直到所有的無(wú)效等價(jià)類(lèi)都被覆蓋為止. 之所以這么做,是因?yàn)槌绦蛑袑?duì)于某一個(gè)錯(cuò)誤輸入的檢查,往往會(huì)屏蔽對(duì)于其他錯(cuò)誤輸入的檢查。因此,必須針對(duì)每一個(gè)無(wú)效等價(jià)類(lèi)分別設(shè)計(jì)測(cè)試用例,測(cè)試用例設(shè)計(jì)方法之等價(jià)類(lèi)分法(1)_理論知識(shí),測(cè)試用例設(shè)計(jì)方法之等價(jià)類(lèi)分法(1)_實(shí)例,I.實(shí)例 1、保險(xiǎn)費(fèi)率計(jì)算 人 人 保 險(xiǎn) 公 司 承 擔(dān) 人 壽 保 險(xiǎn) 已 有 多 年 歷 史 , 該 公 司 保 費(fèi) 計(jì) 算 方

10、 式 為 投 保 額 保 險(xiǎn) 率 , 保 險(xiǎn) 率 又 依 點(diǎn) 數(shù) 不 同 而 有 別 , 10 點(diǎn) 以 上 費(fèi) 率 為 0.6 % , 10 點(diǎn) 以 下 費(fèi) 率 為 0.1 % : 輸入數(shù)據(jù)說(shuō)明,測(cè)試用例設(shè)計(jì)方法之等價(jià)類(lèi)分法(1)_實(shí)例,A、分 析 輸 入 數(shù) 據(jù) 型 式 。 年 齡 :一 或 兩 位 數(shù) 字 。 性 別 : Male、Female、M、F表示 婚 姻 :已 婚、 未 婚 扶 養(yǎng) 人 數(shù) :空白或一位數(shù)字 保 險(xiǎn) 費(fèi) 率 :10點(diǎn)以上,10點(diǎn)以下,B、劃分輸入數(shù)據(jù),C、設(shè)計(jì)輸入數(shù)據(jù),測(cè)試用例設(shè)計(jì)方法之等價(jià)類(lèi)分法(1)_實(shí)例,D、根據(jù)以上分析測(cè)試用例數(shù)據(jù),測(cè)試用例設(shè)計(jì)方法之等價(jià)類(lèi)

11、分法(1)_實(shí)例,測(cè)試用例設(shè)計(jì)方法之邊界值分析法(2)_理論知識(shí),I.理論知識(shí) 邊界值分析方法是對(duì)等價(jià)類(lèi)劃分方法的補(bǔ)充,也是一種黑盒測(cè)試方法,適度等價(jià)類(lèi)分析方法的一種補(bǔ)充,由長(zhǎng)期的測(cè)試工作經(jīng)驗(yàn)得知,大量的錯(cuò)誤是發(fā)生在輸入或輸出的邊界上。因此針對(duì)各種邊界情況設(shè)計(jì)測(cè)試用例,可以查出更多的錯(cuò)誤。 (1)邊界值分析方法的考慮: 長(zhǎng)期的測(cè)試工作經(jīng)驗(yàn)告訴我們,大量的錯(cuò)誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部.因此針對(duì)各種邊界情況設(shè)計(jì)測(cè)試用例,可以查出更多的錯(cuò)誤. 使用邊界值分析方法設(shè)計(jì)測(cè)試用例,首先應(yīng)確定邊界情況.通常輸入和輸出等價(jià)類(lèi)的邊界,就是應(yīng)著重測(cè)試的邊界情況.應(yīng)當(dāng)選取正好等

12、于,剛剛大于或剛剛小于邊界的值作為測(cè)試數(shù)據(jù),而不是選取等價(jià)類(lèi)中的典型值或任意值作為測(cè)試數(shù)據(jù). (2)基于邊界值分析方法選擇測(cè)試用例的原則: 1)如果輸入條件規(guī)定了值的范圍,則應(yīng)取剛達(dá)到這個(gè)范圍的邊界的值,以及剛剛超越這個(gè)范圍邊界的值作為測(cè)試輸入數(shù)據(jù). 2)如果輸入條件規(guī)定了值的個(gè)數(shù),則用最大個(gè)數(shù),最小個(gè)數(shù),比最小個(gè)數(shù)少一,比最大個(gè)數(shù)多一的數(shù)作為測(cè)試數(shù)據(jù). 3)根據(jù)規(guī)格說(shuō)明的每個(gè)輸出條件,使用前面的原則1). 4)根據(jù)規(guī)格說(shuō)明的每個(gè)輸出條件,應(yīng)用前面的原則2). 5)如果程序的規(guī)格說(shuō)明給出的輸入域或輸出域是有序集合,則應(yīng)選取集合的第一個(gè)元素和最后一個(gè)元素作為測(cè)試用例. 6)如果程序中使用了一個(gè)內(nèi)

13、部數(shù)據(jù)結(jié)構(gòu),則應(yīng)當(dāng)選擇這個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu)的邊界上的值作為測(cè)試用例. 7)分析規(guī)格說(shuō)明,找出其它可能的邊界條件,測(cè)試用例設(shè)計(jì)方法之邊界值分析法(2)_實(shí)例,II.實(shí)例 找零錢(qián)最佳組合 假設(shè)商店貨品價(jià)格(R)皆不大于100元(且為整數(shù)),若顧客付款在100元內(nèi)(P),求找給顧客之最少 貨幣個(gè)(張)數(shù)?(貨幣面值50元(N50),10元(N10),5元(N5),1元(N1)四種,一、分析輸入的情形,R100 0R=100 R=0 P100 R= P=100 PR,二、分析輸出情形,N501 N500 4 N10 1 N10=0 N5=1 N5=0 4 N1 1 N1=0,三、分析規(guī)格中每一決策點(diǎn)之情形

14、,以RR1,RR2,RR3表示計(jì)算要找的貨幣數(shù)時(shí)之剩余金額,P 100P = 50RR2 = 10RR3 = 5,R100 R=0 0R=100 ,P100 0R=100 ,PR 0R=100 , RP100,RR50 0R=100 , RP100,RR49 0R=100 , RP100,RR10 0R=100 , RP100,RR9 0R=100 , RP100,RR5 0R=100 , RP100,RR4 0R=100 , RP100,RR1 0R=100 , RP100,RR0,四、由上述之輸入/輸出條件組合出可能的情形,測(cè)試用例設(shè)計(jì)方法之邊界值分析法(2)_實(shí)例,五、為滿足以上各種情形

15、,測(cè)試資料設(shè)計(jì)如下,1.貨品價(jià)格 = 101 2.貨品價(jià)格 = 0 3.貨品價(jià)格 = -1 4.貨品價(jià)格 = 100, 付款金額 = 101 5.貨品價(jià)格 = 100, 付款金額 = 99 6.貨品價(jià)格 = 50, 付款金額 = 100 7.貨品價(jià)格 = 51, 付款金額 = 100 8.貨品價(jià)格 = 90, 付款金額 = 100 9.貨品價(jià)格 = 91, 付款金額 = 100 10.貨品價(jià)格 = 95, 付款金額 = 100 11.貨品價(jià)格 = 96, 付款金額 = 100 12.貨品價(jià)格 = 99, 付款金額 = 100 13.貨品價(jià)格 = 100, 付款金額 = 100,測(cè)試用例設(shè)計(jì)方法

16、之錯(cuò)誤推測(cè)法(3,1、定義:基于經(jīng)驗(yàn)和直覺(jué)推測(cè)程序中所有可能存在的各種錯(cuò)誤, 從而有針對(duì)性的設(shè)計(jì)測(cè)試用例的方法. 2、錯(cuò)誤推測(cè)方法的基本思想:列舉出程序中所有可能有的錯(cuò)誤和容易發(fā)生錯(cuò)誤的特殊情況,根據(jù)他們選擇測(cè)試用例。 1)例如, 輸入數(shù)據(jù)和輸出數(shù)據(jù)為0的情況;輸入表格為空格或輸入表格只有一行。 這些都是容易發(fā)生錯(cuò)誤的情況??蛇x擇這些情況下的例子作為測(cè)試用例。 2)例如,例子中學(xué)生成績(jī)報(bào)告的程序,采用錯(cuò)誤推測(cè)法還可補(bǔ)充設(shè)計(jì)一些測(cè)試用例: I.程序是否把空格作為回答 II.在回答記錄中混有標(biāo)準(zhǔn)答案記錄 III.除了標(biāo)題記錄外,還有一些的記錄最后一個(gè)字符即不是2也不是3 IV.有兩個(gè)學(xué)生的學(xué)號(hào)相同

17、 V.試題數(shù)是負(fù)數(shù)。 3)再如,測(cè)試一個(gè)對(duì)線性表(比如數(shù)組)進(jìn)行排序的程序,可推測(cè)列出以下幾項(xiàng)需要特別測(cè)試的情況: I.輸入的線性表為空表; II.表中只含有一個(gè)元素; III.輸入表中所有元素已排好序; IV.輸入表已按逆序排好; V.輸入表中部分或全部元素相同,測(cè)試用例設(shè)計(jì)方法之因果圖法(4)_理論知識(shí),1.定義:是一種利用圖解法分析輸入的各種組合情況,從而設(shè)計(jì)測(cè)試用例的方法,它適合于檢查程序輸入條件的各種組合情況。 2.因果圖法產(chǎn)生的背景: 等價(jià)類(lèi)劃分法和邊界值分析方法都是著重考慮輸入條件,但沒(méi)有考慮輸入條件的各種組合、輸入條件之間的相互制約關(guān)系。這樣雖然各種輸入條件可能出錯(cuò)的情況已經(jīng)測(cè)

18、試到了,但多個(gè)輸入條件組合起來(lái)可能出錯(cuò)的情況卻被忽視了。 如果在測(cè)試時(shí)必須考慮輸入條件的各種組合,則可能的組合數(shù)目將是天文數(shù)字,因此必須考慮采用一種適合于描述多種條件的組合、相應(yīng)產(chǎn)生多個(gè)動(dòng)作的形式來(lái)進(jìn)行測(cè)試用例的設(shè)計(jì),這就需要利用因果圖(邏輯模型,3.因果圖介紹 1)4種符號(hào)分別表示了規(guī)格說(shuō)明中向4種因果關(guān)系,2)因果圖中使用了簡(jiǎn)單的邏輯符號(hào),以直線聯(lián)接左右結(jié)點(diǎn)。左結(jié)點(diǎn)表示輸入狀態(tài)(或稱原因),右結(jié)點(diǎn)表示輸出狀態(tài)(或稱結(jié)果,3)Ci表示原因,通常置于圖的左部;ei表示結(jié)果,通常在圖的右部。Ci和ei均可取值0或1,0表示某狀態(tài)不出現(xiàn),1表示某狀態(tài)出現(xiàn),4. 因果圖概念 1) 關(guān)系 恒等:若ci

19、是1,則ei也是1;否則ei為0。 非:若ci是1,則ei是0;否則ei是1。 或:若c1或c2或c3是1,則ei是1;否則ei為0?!盎颉笨捎腥我鈧€(gè)輸入。 與:若c1和c2都是1,則ei為1;否則ei為0?!芭c”也可有任意個(gè)輸入。 2) 約束 輸入狀態(tài)相互之間還可能存在某些依賴關(guān)系,稱為約束。例如, 某些輸入條件本身不可能同時(shí)出現(xiàn)。輸出狀態(tài)之間也往往存在約束。在因果圖中,用特定的符號(hào)標(biāo)明這些約束,測(cè)試用例設(shè)計(jì)方法之因果圖法(4)_理論知識(shí),A.輸入條件的約束有以下4類(lèi): E約束(異):a和b中至多有一個(gè)可能為1,即a和b不能同時(shí)為1。 I約束(或):a、b和c中至少有一個(gè)必須是1,即 a、b

20、 和c不能同時(shí)為0。 O約束(唯一);a和b必須有一個(gè),且僅有1個(gè)為1。 R約束(要求):a是1時(shí),b必須是1,即不可能a是1時(shí)b是0。 B.輸出條件約束類(lèi)型 輸出條件的約束只有M約束(強(qiáng)制):若結(jié)果a是1,則結(jié)果b強(qiáng)制為0,5.采用因果圖法設(shè)計(jì)測(cè)試用例的步驟: 1)分析軟件規(guī)格說(shuō)明描述中, 那些是原因(即輸入條件或輸入條件的等價(jià)類(lèi)),那些是結(jié)果(即輸出條件), 并給每個(gè)原因和結(jié)果賦予一個(gè)標(biāo)識(shí)符。 2)分析軟件規(guī)格說(shuō)明描述中的語(yǔ)義,找出原因與結(jié)果之間, 原因與原因之間對(duì)應(yīng)的關(guān)系,根據(jù)這些關(guān)系,畫(huà)出因果圖。 3)由于語(yǔ)法或環(huán)境限制, 有些原因與原因之間,原因與結(jié)果之間的組合情況不可能出現(xiàn),為表明

21、這些特殊情況, 在因果圖上用一些記號(hào)表明約束或限制條件。 4)把因果圖轉(zhuǎn)換為判定表。 5)把判定表的每一列拿出來(lái)作為依據(jù),設(shè)計(jì)測(cè)試用例,測(cè)試用例設(shè)計(jì)方法之因果圖法(4)_理論知識(shí),測(cè)試用例設(shè)計(jì)方法之因果圖法(4)_實(shí)例,分析中國(guó)象棋中走馬的實(shí)際情況(下面未注明的均指的是對(duì)馬的說(shuō)明) 1、如果落點(diǎn)在棋盤(pán)外,則不移動(dòng)棋子;2、如果落點(diǎn)與起點(diǎn)不構(gòu)成日字型,則不移動(dòng)棋子;3、如果落點(diǎn)處有自己方棋子,則不移動(dòng)棋子;4、如果在落點(diǎn)方向的鄰近交叉點(diǎn)有棋子(絆馬腿),則不移動(dòng)棋子;5、如果不屬于1-4條,且落點(diǎn)處無(wú)棋子,則移動(dòng)棋子;6、如果不屬于1-4條,且落點(diǎn)處為對(duì)方棋子(非老將),則移動(dòng)棋子并除去對(duì)方棋子

22、;7如果不屬于1-4條,且落點(diǎn)處為對(duì)方老將,則移動(dòng)棋子,并提示戰(zhàn)勝對(duì)方,游戲結(jié)束。 根據(jù)分析明確原因和結(jié)果 原因: 1.落點(diǎn)在棋盤(pán)上; 2.落點(diǎn)與起點(diǎn)構(gòu)成日字; 3.落點(diǎn)處為自己方棋子; 4.落點(diǎn)方向的鄰近交叉點(diǎn)無(wú)棋子; 5.落點(diǎn)處無(wú)棋子; 6.落點(diǎn)處為對(duì)方棋子(非老將); 7.落點(diǎn)處為對(duì)方老將。 結(jié)果: 21、不移動(dòng)棋子; 22、移動(dòng)棋子; 23、移動(dòng)棋子,并除去對(duì)方棋子; 24、移動(dòng)棋子,并提示戰(zhàn)勝對(duì)方,結(jié)束游戲。 添加中間節(jié)點(diǎn)11,目的是作為導(dǎo)出結(jié)果的進(jìn)一步原因,簡(jiǎn)化因果圖導(dǎo)出的判定表,測(cè)試用例設(shè)計(jì)方法之因果圖法(4)_實(shí)例,考慮結(jié)果不能同時(shí)發(fā)生,所以對(duì)其施加唯一約束O。原因5、6、7不

23、能同時(shí)發(fā)生,所以對(duì)其施加異約束E,三、根據(jù)因果圖建立判定表:(分為兩表,注:1、判定表中由于表格大小限制沒(méi)有列出最后所選的測(cè)試用例; 2、第2表中部分列被合并表示不可能發(fā)生的現(xiàn)象; 3、通過(guò)中間節(jié)點(diǎn)將用例的判定表簡(jiǎn)化為兩個(gè)小表。減少工作量,測(cè)試用例設(shè)計(jì)方法之因果圖法(4)_實(shí)例,測(cè)試用例設(shè)計(jì)方法之路徑覆蓋法(5)_理論,熟悉測(cè)試?yán)碚摰娜硕贾?,路徑覆蓋是白盒測(cè)試中一種很重要的方法,廣泛應(yīng)用于單元測(cè)試。那么基于路徑覆蓋的分析方法是不是只能應(yīng)用于單元測(cè)試呢,能不能將其推而廣之呢。一般而言,在單元測(cè)試中,路徑就是指函數(shù)代碼的某個(gè)分支,而實(shí)際上如果我們將軟件系統(tǒng)的某個(gè)流程也看成路徑的話,我們將可以嘗試

24、著用路徑分析的方法來(lái)設(shè)計(jì)測(cè)試用例。采用路徑分析的方法設(shè)計(jì)測(cè)試用例有兩點(diǎn)好處:一是降低了測(cè)試用例設(shè)計(jì)的難度,只要搞清了各種流程,就可以設(shè)計(jì)出高質(zhì)量的測(cè)試用例來(lái),而不用太多測(cè)試方面的經(jīng)驗(yàn);二是在測(cè)試時(shí)間較緊的情況下,可以有的放矢的選擇測(cè)試用例,而不用完全根據(jù)經(jīng)驗(yàn)來(lái)取舍。下面就具體的介紹一下如何用路徑分析的方法編寫(xiě)測(cè)試用例。 首先是將系統(tǒng)運(yùn)行過(guò)程中所涉及到的各種流程圖表化,可以先從最基本的流程入手,將流程抽象成為不同功能的順序執(zhí)行。在最基本流程的基礎(chǔ)上再去考慮次要或者異常的流程,這樣將各種流程逐漸細(xì)化,這樣既可以逐漸加深對(duì)流程的理解,還可以將各個(gè)看似孤立的流程關(guān)聯(lián)起來(lái)。完成所有流程的圖表化后就完成了

25、所有路徑的設(shè)定。 找出了所有的路徑,下面的工作就是給每條路徑設(shè)定優(yōu)先級(jí),這樣在測(cè)試時(shí)就可以先測(cè)優(yōu)先級(jí)高的,再測(cè)優(yōu)先級(jí)低的,在時(shí)間緊迫的情況下甚至可以考慮忽略一些低優(yōu)先級(jí)的路徑。優(yōu)先級(jí)根據(jù)兩個(gè)原則來(lái)選?。阂皇锹窂绞褂玫念l率,使用越頻繁的優(yōu)先級(jí)越高;二是路徑的重要程度,如果失敗對(duì)系統(tǒng)影響越大的優(yōu)先級(jí)越高。將根據(jù)兩個(gè)原則所分別得到的優(yōu)先級(jí)相加就得到了整個(gè)路徑的優(yōu)先級(jí)。根據(jù)優(yōu)先級(jí)的排序就可以更有針對(duì)性的進(jìn)行測(cè)試。 為每條路徑設(shè)定好優(yōu)先級(jí)后,接下來(lái)的工作就是為每條路徑選取測(cè)試數(shù)據(jù),構(gòu)造測(cè)試用例。一條路徑可以對(duì)應(yīng)多個(gè)測(cè)試用例,在選取測(cè)試數(shù)據(jù)時(shí),可以充分利用邊界值選取等方法,通過(guò)表格將各種測(cè)試數(shù)據(jù)的輸入輸出

26、對(duì)應(yīng)起來(lái),這樣就完成了測(cè)試用例的設(shè)計(jì)。 對(duì)于測(cè)試人員而言,測(cè)試用例的設(shè)計(jì)是一件非常困難的工作,而同時(shí)測(cè)試用例的設(shè)計(jì)好壞又直接關(guān)系到整個(gè)系統(tǒng)的設(shè)計(jì)質(zhì)量。本文介紹了一種更理論化的設(shè)計(jì)方法來(lái)盡量簡(jiǎn)化這種工作,將一般應(yīng)用于單元測(cè)試的路徑分析方法推廣到集成測(cè)試、系統(tǒng)測(cè)試等后續(xù)測(cè)試過(guò)程中,希望能給大家一點(diǎn)啟示,測(cè)試用例設(shè)計(jì)方法之功能圖法(6)_理論,一.方法簡(jiǎn)介 一個(gè)程序的功能說(shuō)明通常由動(dòng)態(tài)說(shuō)明和靜態(tài)說(shuō)明組成.動(dòng)態(tài)說(shuō)明描述了輸入數(shù)據(jù)的次序或轉(zhuǎn)移的次序.靜態(tài)說(shuō)明描述了輸入條件與輸出條件之間的對(duì)應(yīng)關(guān)系.對(duì)于較復(fù)雜的程序,由于存在大量的組合情況,因此,僅用靜態(tài)說(shuō)明組成的規(guī)格說(shuō)明對(duì)于測(cè)試來(lái)說(shuō)往往是不夠的.必須用動(dòng)

27、態(tài)說(shuō)明來(lái)補(bǔ)充功能說(shuō)明.功能圖方法是用功能圖FD形式化地表示程序的功能說(shuō)明,并機(jī)械地生成功能圖的測(cè)試用例. 功能圖模型由狀態(tài)遷移圖和邏輯功能模型構(gòu)成.狀態(tài)遷移圖用于表示輸入數(shù)據(jù)序列以及相應(yīng)的輸出數(shù)據(jù).在狀態(tài)遷移圖中,由輸入數(shù)據(jù)和當(dāng)前狀態(tài)決定輸出數(shù)據(jù)和后續(xù)狀態(tài).邏輯功能模型用于表示在狀態(tài)中輸入條件和輸出條件之間的對(duì)應(yīng)關(guān)系.邏輯功能模型只適合于描述靜態(tài)說(shuō)明,輸出數(shù)據(jù)僅由輸入數(shù)據(jù)決定.測(cè)試用例則是由測(cè)試中經(jīng)過(guò)的一系列狀態(tài)和在每個(gè)狀態(tài)中必須依靠輸入/輸出數(shù)據(jù)滿足的一對(duì)條件組成.功能圖方法其實(shí)是是一種黑盒白盒混合用例設(shè)計(jì)方法。 (功能圖方法中,要用到邏輯覆蓋和路徑測(cè)試的概念和方法,其屬白盒測(cè)試方法中 的內(nèi)

28、容.邏輯覆蓋是以程序內(nèi)部的邏輯結(jié)構(gòu)為基礎(chǔ)的測(cè)試用例設(shè)計(jì)方法.該方法要求測(cè)試人員對(duì)程序的邏輯結(jié)構(gòu)有清楚的了解.由于覆蓋測(cè)試的目標(biāo)不同,邏輯覆蓋可分為:語(yǔ)句覆蓋,判定覆蓋,判定-條件覆蓋,條件組合覆蓋及路徑覆蓋.下面我們指的邏輯覆蓋和路徑是功能或系統(tǒng)水平上的,以區(qū)別與白盒測(cè)試中的程序內(nèi)部的.) 1.功能圖 功能圖由狀態(tài)遷移圖和布爾函數(shù)組成.狀態(tài)遷移圖用狀態(tài)和遷移來(lái)描述.一個(gè)狀態(tài)指出數(shù)據(jù)輸入的位置(或時(shí)間),而遷移則指明狀態(tài)的改變.同時(shí)要依靠判定表或因果圖表示的邏輯功能.例,一個(gè)簡(jiǎn)化的自動(dòng)出納機(jī)ATM的功能圖,2.測(cè)試用例生成方法 從功能圖生成測(cè)試用例,得到的測(cè)試用例數(shù)是可接受的. 問(wèn)題的關(guān)鍵的是如

29、何從狀態(tài)遷移圖中選取測(cè)試用例. 若用節(jié)點(diǎn)代替狀態(tài),用弧線代替遷移,則狀態(tài)遷移圖就可轉(zhuǎn)化成一個(gè)程序的控制流程圖形式.問(wèn)題就轉(zhuǎn)化為程序的路徑測(cè)試問(wèn)題(如白盒測(cè)試)問(wèn)題了. 3.測(cè)試用例生成規(guī)則 為了把狀態(tài)遷移(測(cè)試路徑)的測(cè)試用例與邏輯模型(局部測(cè)試用例)的測(cè)試用例組合起來(lái),從功能圖生成實(shí)用的測(cè)試用例,須定義下面的規(guī)則.在一個(gè)結(jié)構(gòu)化的狀態(tài)遷移(SST)中,定義三種形式的循環(huán):順序,選擇和重復(fù).但分辨一個(gè)狀態(tài)遷移中的所有循環(huán)是有困難的.(其表示圖形省略)。 4.從功能圖生成測(cè)試用例的過(guò)程 1)生成局部測(cè)試用例:在每個(gè)狀態(tài)中,從因果圖生成局部測(cè)試用例.局部測(cè)試用例由原因值(輸入數(shù)據(jù))組合與對(duì)應(yīng)的結(jié)果值

30、(輸出數(shù)據(jù)或狀態(tài))構(gòu)成。 2)測(cè)試路徑生成:利用上面的規(guī)則(三種)生成從初始狀態(tài)到最后狀態(tài)的測(cè)試路徑。 3)測(cè)試用例合成:合成測(cè)試路徑與功能圖中每個(gè)狀態(tài)中的局部測(cè)試用例.結(jié)果是初始狀態(tài)到最后狀態(tài)的一個(gè)狀態(tài)序列,以及每個(gè)狀態(tài)中輸入數(shù)據(jù)與對(duì)應(yīng)輸出數(shù)據(jù)的組合。 5.測(cè)試用例的合成算法:采用條件構(gòu)造樹(shù),測(cè)試用例設(shè)計(jì)方法之功能圖法(6)_理論,測(cè)試用例設(shè)計(jì)方法之正交試驗(yàn)設(shè)計(jì)法(7)_理論,1、什么是因素(Factor在一項(xiàng)試驗(yàn)中,凡欲考察的變量稱為因素(變量) 2、什么是水平(位級(jí)Level在試驗(yàn)范圍內(nèi),因素被考察的值稱為水平(變量的取值) 3、什么是正交試驗(yàn)設(shè)計(jì) 是研究多因素多水平的一種設(shè)計(jì)方法,它是

31、根據(jù)正交性從全面試驗(yàn)中挑選出部分有代表性的點(diǎn)進(jìn)行試驗(yàn),這些有代表性的點(diǎn)具備了均勻分散,齊整可比的特點(diǎn),正交試驗(yàn) 設(shè)計(jì)是一種基于正交表的、高效率、快速、經(jīng)濟(jì)的試驗(yàn)設(shè)計(jì)方法 4、正交表的構(gòu)成 正交表的構(gòu)成 行數(shù)(Runs):正交表中的行的個(gè)數(shù),即試驗(yàn)的次數(shù) 因素?cái)?shù)(Factors):正交表中列的個(gè)數(shù)。 水平數(shù):任何單個(gè)因素能夠取得的值的最大個(gè)數(shù)。 正交表中的包含的值為從最大個(gè)數(shù)。正交表中的包含的值為從0到數(shù) 到數(shù)“水平 水平數(shù)-1”或從 或從1到“水平數(shù) 水平數(shù)”。 正交表的表示形式: L行數(shù) (水平數(shù)因素?cái)?shù)) 正交表的正交性 整齊可比性 在同一張正交表中,每個(gè)因素的每個(gè)水平出現(xiàn)次數(shù)是完全相同的。

32、由于在試驗(yàn)中每個(gè)因素的每個(gè)水平與其它因素的每個(gè)水平參與試驗(yàn)的機(jī)率是完全相同的,這就保證在各個(gè)水平中最大程度的排除了其它因素水平的干擾。因而,能最有效地進(jìn)行比較和作出展望,容易找到好的試驗(yàn)條件進(jìn)行。 均衡分散性 在同一張正交表中,任意兩列(兩個(gè)因素)的水平搭配(橫向形成的數(shù)字對(duì))是完全相同的。這樣就保證了試驗(yàn)條件均衡地分散在因素水平的完全組合之中,因而具有很強(qiáng)的代表性,容易得到好的試驗(yàn)條件,三、用正交表設(shè)計(jì)測(cè)試用例 用正交表設(shè)計(jì)測(cè)試用例的步驟 1 有哪些因素(變量) 2 每個(gè)因素有哪幾個(gè)水平(變量的取值) 3 選擇一個(gè)合適的正交表 4 把變量的值映射到表中 5 把每一行的各因素水平的組合做為一個(gè)

33、測(cè)試用例 6 加上你認(rèn)為可疑且沒(méi)有在表中出現(xiàn)的組 如何選擇正交表 考慮因素(變量)的個(gè)數(shù) 考慮因素水平(變量的取值)的個(gè)數(shù) 考慮正交表的行數(shù) 取行數(shù)最少的一個(gè) 設(shè)計(jì)測(cè)試用例時(shí)的三種情況 1 因素?cái)?shù)(變量)、水平數(shù)(變量值)相符 2 因素?cái)?shù)不相同 3 水平數(shù)不相同 因素?cái)?shù)、水平數(shù)相符 因素?cái)?shù)、水平數(shù)相符 水平數(shù)(變量的取值)相同、因素?cái)?shù)(變量)剛好符合正交表,測(cè)試用例設(shè)計(jì)方法之正交試驗(yàn)設(shè)計(jì)法(7)_理論,測(cè)試用例設(shè)計(jì)方法之正交試驗(yàn)設(shè)計(jì)法(7)_實(shí)例,一、對(duì)某人進(jìn)行查詢 1、假設(shè)查詢某個(gè)人時(shí)有三個(gè)查詢條件: 根據(jù)“姓名”進(jìn)行查詢 根據(jù)“身份證號(hào)碼”查詢 根據(jù)“手機(jī)號(hào)碼”查詢,考慮查詢條件要么不填寫(xiě),要么填寫(xiě),此時(shí)可用正交表進(jìn)行設(shè)計(jì),2、因素?cái)?shù)和水平數(shù) 有三個(gè)因素: 姓名、身份證號(hào)、手機(jī)號(hào)碼 每個(gè)因素有兩個(gè)水平 姓名:填、不填 身份

溫馨提示

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

評(píng)論

0/150

提交評(píng)論