

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、,實(shí)驗(yàn)一 科技樓 測(cè)試二室周二/三下午 5-6節(jié)。第7節(jié)回教室上課。上機(jī)時(shí),第2節(jié)課開始后,實(shí)驗(yàn)完成一部分的,可以給我檢查。檢查后繼續(xù)完成實(shí)驗(yàn),第7節(jié)課回到教室上課。,黑盒測(cè)試技術(shù),僅需:被測(cè)對(duì)象的輸入、預(yù)期輸出無需:程序的結(jié)構(gòu)、實(shí)現(xiàn)邏輯、源代碼 … …依據(jù):系統(tǒng)需求or測(cè)試需求,黑盒測(cè)試技術(shù),適用階段當(dāng)被測(cè)對(duì)象為函數(shù)時(shí) JPGs\2\TwoPS.java完成對(duì)函數(shù)功能的測(cè)試無需
2、查看函數(shù)代碼,只需了解函數(shù)接口和返回值。對(duì)應(yīng)單元測(cè)試階段。當(dāng)被測(cè)對(duì)象為功能時(shí) JPGs\1\NEXTDAY.exe完成對(duì)整個(gè)軟件系統(tǒng)功能和一些特性的測(cè)試也無需看各功能點(diǎn)如何編程實(shí)現(xiàn),只需要了解SRS中關(guān)于輸入和輸出的規(guī)定,就可以設(shè)計(jì)測(cè)試用例,開展測(cè)試。對(duì)應(yīng)系統(tǒng)測(cè)試,或有用戶共同參與的驗(yàn)收測(cè)試階段。,黑盒測(cè)試技術(shù),常用測(cè)試方法邊界值測(cè)試、等價(jià)類測(cè)試、基于決策表的測(cè)試和基于正交表的測(cè)試等主要從數(shù)據(jù)
3、優(yōu)選的角度展開測(cè)試,適用于單元測(cè)試(和系統(tǒng)測(cè)試),用于對(duì)函數(shù)或類的方法進(jìn)行測(cè)試基于場(chǎng)景的測(cè)試從業(yè)務(wù)流程優(yōu)選的角度展開測(cè)試,適用于系統(tǒng)測(cè)試階段,用于對(duì)功能、界面等進(jìn)行測(cè)試,黑盒測(cè)試技術(shù),優(yōu)勢(shì)對(duì)測(cè)試人員的開發(fā)技術(shù)要求相對(duì)較低。只要對(duì)照需求規(guī)格說明書SRS 或用戶手冊(cè)來開展測(cè)試。不需要了解程序?qū)崿F(xiàn)的細(xì)節(jié),測(cè)試團(tuán)隊(duì)與開發(fā)團(tuán)隊(duì)可以并行完成各自的任務(wù)。SRS確定后,即可開始制定測(cè)試計(jì)劃和測(cè)試設(shè)計(jì)工作,提高團(tuán)隊(duì)開發(fā)進(jìn)度。
4、黑盒測(cè)試方法簡單有效,可以整體測(cè)試系統(tǒng)的行為,黑盒測(cè)試技術(shù),等價(jià)類測(cè)試邊界值測(cè)試實(shí)驗(yàn)一保險(xiǎn)金案例,等價(jià)類測(cè)試,1994年,Intel P CPU芯片就有一個(gè)缺陷(4195835/3145727)x3145727 – 4195835計(jì)算結(jié)果不是0,表示計(jì)算機(jī)的浮點(diǎn)除法存在缺陷!當(dāng)然,Intel 內(nèi)部測(cè)試時(shí)發(fā)現(xiàn)了這個(gè)缺陷。NextDate,需要在輸入數(shù)據(jù)域上取大量的測(cè)試數(shù)據(jù),執(zhí)行測(cè)試。以達(dá)(或接近)完全覆蓋,避免測(cè)
5、試漏洞。,簡單隨機(jī)設(shè)計(jì)的測(cè)試用例盡管數(shù)量大,未必覆蓋率就高。很多用例都只能發(fā)現(xiàn)同一個(gè)bug,不需要重復(fù)執(zhí)行這么多用例。,請(qǐng)回答,你會(huì)怎么來設(shè)計(jì)測(cè)試用例呢?,等價(jià)類測(cè)試,測(cè)試方法的兩個(gè)目標(biāo)不可能做到窮盡測(cè)試,因而希望測(cè)試方法達(dá)到:完備性采用少量測(cè)試用例,能在理論上完全覆蓋被測(cè)對(duì)象的輸入域和輸出域。無冗余性測(cè)試用例之間不存在冗余,每個(gè)測(cè)試用例都是為了揭示某一類型的軟件缺陷而設(shè)計(jì)的。刪去任何一個(gè)測(cè)試用例都將影響對(duì)該
6、缺陷的挖掘能力。人們提出等價(jià)類方法(equivalent class)來達(dá)到這兩個(gè)目標(biāo)。,等價(jià)類測(cè)試,基本原理:通過等價(jià)劃分的方式,來將輸入數(shù)據(jù)(如月份,或年月日)的區(qū)域分片。從每個(gè)分片中抽取典型數(shù)據(jù)展開測(cè)試,以滿足測(cè)試的完備性和無冗余性。,等價(jià)類測(cè)試,通過劃分方式,將輸入域劃分為多個(gè)子集(等價(jià)類),子集滿足:每個(gè)子集內(nèi)所有數(shù)據(jù)等價(jià)(理論假設(shè)上可以等價(jià)),即被測(cè)系統(tǒng)對(duì)該子集中每個(gè)數(shù)據(jù)的處理方式相同(選擇典型數(shù)據(jù)能保證對(duì)相應(yīng)子
7、集的覆蓋)處理方式相同 ~ 執(zhí)行的代碼(線路)流程就很可能一樣各子集之間互不相交,即輸入域中的某個(gè)數(shù)據(jù)(或某項(xiàng))唯一隸屬于某個(gè)子集(保證無冗余)所有子集的并集是整個(gè)輸入域(保證完備)對(duì)每個(gè)子集,抽取一個(gè)典型數(shù)據(jù),所構(gòu)成的數(shù)據(jù)集合可滿足測(cè)試的完備和無冗余性,降低測(cè)試工作量。,請(qǐng)思考,找出一些NextDate 問題的等價(jià)數(shù)據(jù),等價(jià)類測(cè)試,用例設(shè)計(jì)選擇被測(cè)對(duì)象有效等價(jià)類和無效等價(jià)類等價(jià)類的劃分針對(duì)有效等價(jià)類的測(cè)試用
8、例設(shè)計(jì)針對(duì)無效等價(jià)類的測(cè)試用例設(shè)計(jì),等價(jià)類測(cè)試,等價(jià)類測(cè)試的難點(diǎn)選擇被測(cè)對(duì)象:即輸入域或輸出域等價(jià)類劃分:如何對(duì)輸入域或輸出域劃分等價(jià)類,確保系統(tǒng)對(duì)每個(gè)等價(jià)類中的所有項(xiàng)采用相同的處理方式。是否存在一般規(guī)律?測(cè)試用例設(shè)計(jì):如何根據(jù)劃分得到的等價(jià)類集合設(shè)計(jì)測(cè)試用例,簡單地將所有輸入的等價(jià)類按照排列組合方式構(gòu)建測(cè)試用例就可以了嗎?理論目標(biāo)的達(dá)成:理論上而言,等價(jià)類測(cè)試可以做到測(cè)試的完備和無冗余。實(shí)際設(shè)計(jì)得到的測(cè)試用例確實(shí)可以保
9、證滿足理論目標(biāo)嗎?2,代碼各式各樣…,等價(jià)類測(cè)試,輸入域的確定整體輸入域根據(jù)被測(cè)對(duì)象的特性,針對(duì)整體輸入域進(jìn)行等價(jià)劃分。年月日 作為一個(gè)輸入整體。個(gè)體輸入域基于“獨(dú)立性假設(shè)”,將整體輸入域拆分成由各個(gè)輸入條件分別構(gòu)成的個(gè)體輸入域進(jìn)行等價(jià)劃分。年/月/日,三個(gè)獨(dú)立的輸入,等價(jià)類測(cè)試,等價(jià)類有效等價(jià)類對(duì)于SRS而言,合理、有意義的輸入數(shù)據(jù)構(gòu)成的集合,即被測(cè)對(duì)象能接受的數(shù)據(jù)。用于考查軟件的正
10、常工作能力。無效等價(jià)類對(duì)于SRS而言,不合理、無意義的輸入數(shù)據(jù)構(gòu)成的集合,即被測(cè)對(duì)象不能接受的數(shù)據(jù)。如 2015年18月0號(hào)用于考查軟件的容錯(cuò)能力。,等價(jià)類測(cè)試,等價(jià)類的劃分的一些原則(1)若輸入條件規(guī)定了取值范圍,且取值范圍上、下限之間的數(shù)據(jù)是有意義的數(shù)據(jù),則取值范圍內(nèi)的數(shù)據(jù)構(gòu)成一個(gè)有效等價(jià)類小于下限、或大于上限的所有數(shù)據(jù)分別構(gòu)成兩個(gè)無效等價(jià)類;(2)若輸入條件規(guī)定了“必須如何”的條件,則滿足必須條件的
11、數(shù)據(jù)構(gòu)成一個(gè)有效等價(jià)類其他數(shù)據(jù)構(gòu)成一個(gè)無效等價(jià)類; 比如賬號(hào)注冊(cè),等價(jià)類測(cè)試,(3)若輸入條件是一個(gè)布爾量,則取真值的數(shù)據(jù)構(gòu)成一個(gè)有效等價(jià)類,取假值的數(shù)據(jù)構(gòu)成一個(gè)無效等價(jià)類;(4)若輸入條件是一個(gè)邏輯量,即規(guī)定了輸入數(shù)據(jù)的一組值,且系統(tǒng)要對(duì)每個(gè)輸入值分別進(jìn)行處理M L XL XXL, 未勾選,勾選多個(gè)則可為每一個(gè)輸入值確立一個(gè)有效等價(jià)類,此外還要針對(duì)這組值確立一個(gè)無效等價(jià)類,它是所有不允許的輸入值的集合,等
12、價(jià)類測(cè)試,用例設(shè)計(jì)選擇被測(cè)對(duì)象有效等價(jià)類和無效等價(jià)類等價(jià)類的劃分針對(duì)有效等價(jià)類的測(cè)試用例設(shè)計(jì)針對(duì)無效等價(jià)類的測(cè)試用例設(shè)計(jì),等價(jià)類測(cè)試,等價(jià)類劃分的簡便方法(1)將某個(gè)輸入條件所有可能的取值劃分為一個(gè)有效等價(jià)類,其余取值劃分為一個(gè)無效等價(jià)類 (2)針對(duì)有效等價(jià)類,通過不斷施加規(guī)則,將滿足規(guī)則和不滿足規(guī)則的數(shù)據(jù)劃分為不同的等價(jià)類(3)重復(fù)該步驟,將有效等價(jià)類中不斷劃分為更多的子等價(jià)類,直至無法繼續(xù)劃分為止最終得到的每個(gè)有
13、效等價(jià)類代表了被測(cè)對(duì)象的一種特定的處理方式對(duì)于無效等價(jià)類也采用這個(gè)原則,但一般不會(huì)進(jìn)行過多的劃分。,等價(jià)類測(cè)試,判斷等價(jià)類的簡便原則在某個(gè)指定的等價(jià)類中,分析被測(cè)對(duì)象對(duì)該等價(jià)類中的輸入數(shù)據(jù)或輸入項(xiàng)的處理方式是否一致例如在等價(jià)類中,選擇等價(jià)類的邊界或中值附近的幾個(gè)值,觀察其處理方式是否一致。如果不一致,則該等價(jià)類需要進(jìn)一步做等價(jià)劃分,等價(jià)類測(cè)試,捉蟲實(shí)踐:NextDate的等價(jià)類測(cè)試針對(duì)個(gè)體輸入域每個(gè)輸入條件的等
14、價(jià)類劃分JPGs\2\c21_1.png,等價(jià)類測(cè)試,針對(duì)無效等價(jià)類,可得到測(cè)試用例JPGs\2\c21_2.png較好地考察了系統(tǒng)的容錯(cuò)能力(健壯性)。,等價(jià)類測(cè)試,針對(duì)有效等價(jià)類,可得到測(cè)試用例 250年的范圍內(nèi)只有 1個(gè)測(cè)試用例具有典型性,代表普通日期(非月末),占全年日期的 96.7%。,黑盒測(cè)試技術(shù),評(píng)價(jià)測(cè)試方法的質(zhì)量測(cè)試用例對(duì)被測(cè)對(duì)象的覆蓋率測(cè)試用例的冗余測(cè)試用例的數(shù)量測(cè)試用例對(duì)缺陷的定位能力
15、測(cè)試用例設(shè)計(jì)的復(fù)雜度不的測(cè)試方法有不同的適用方面,場(chǎng)合和階段,可產(chǎn)生不同的測(cè)試效果。結(jié)合多種方法能保證整體的測(cè)試效果。,測(cè)試最怕漏洞。對(duì)被測(cè)對(duì)象的覆蓋程度越高,遺漏缺陷的風(fēng)險(xiǎn)就越低,測(cè)試方法都是對(duì)某個(gè)關(guān)鍵問題或方面的簡化建模,得到的用例可能會(huì)存在冗余。數(shù)量雖多,但缺陷的發(fā)現(xiàn)率無法提高。,在無漏洞和無冗余的前提下,某測(cè)試方法的用例數(shù)量越少,對(duì)應(yīng)的測(cè)試工作量越低用例報(bào)告、管理、腳本、執(zhí)行、檢驗(yàn)結(jié)果,用例都對(duì)應(yīng)著某類數(shù)據(jù)或缺陷。好的測(cè)
16、試方法能確保用例失敗時(shí),可快速隔離和定位相應(yīng)的缺陷。,復(fù)雜度越低,設(shè)計(jì)越簡單,對(duì)測(cè)試人員的經(jīng)驗(yàn)要求就低,工作量也低,等價(jià)類測(cè)試,占全年日期的 96.7%。有漏洞,沒達(dá)到前面所說的完備性。然而,測(cè)試最怕漏洞,未覆蓋的3.3%對(duì)應(yīng)著最復(fù)雜的日期,對(duì)應(yīng)代碼(P115)的重點(diǎn)部分,存在缺陷的風(fēng)險(xiǎn)極高?;仡櫼幌拢狠斎胗虻拇_定:個(gè)體輸入域基于“獨(dú)立性假設(shè)”,將整體輸入域拆分成由各個(gè)輸入條件分別構(gòu)成的個(gè)體輸入域進(jìn)行等價(jià)劃分。然而
17、,日期的三個(gè)輸入條件之間并不獨(dú)立,有關(guān)聯(lián)性。NextDate對(duì)多種月末的處理方式不同于一般日期,等價(jià)類劃分不合理,不等價(jià),需要改進(jìn)劃分方法。,等價(jià)類測(cè)試,等價(jià)類的劃分通常需要結(jié)合領(lǐng)域知識(shí),即充分利用被測(cè)系統(tǒng)的業(yè)務(wù)功能特性來劃分。特殊日期主要在于月末日期,而不同月份的月末日期也有不相同。因此得到新的日期劃分:,請(qǐng)思考,怎么單獨(dú)等價(jià)劃分:年,月,日,系統(tǒng)對(duì)每年(每月/每日)都一樣嗎,等價(jià)類測(cè)試,針對(duì)有效等價(jià)類的測(cè)試用例設(shè)計(jì)
18、每個(gè)輸入條件都有多個(gè)有效等價(jià)類。假設(shè)輸入條件x和y,分別有m和n個(gè)有效等價(jià)類。強(qiáng)組合方式將得到 mn 個(gè)測(cè)試用例。如果輸入條件多或等價(jià)類多,用例規(guī)模將會(huì)龐大。弱組合方式,等價(jià)類測(cè)試,強(qiáng)組合方式 任意m,n m=3,n=2,等價(jià)類測(cè)試,弱組合方式基本思想:測(cè)試用例完全覆蓋所有輸入條件的有效等價(jià)類即可。假設(shè)有m和n個(gè)有效等價(jià)類,將可
19、能得到m個(gè)測(cè)試用例。假設(shè)m>n,將得到用例集(CX1,CY1), …,(CXn,CYn), (CXn+1,CY1),…,(CXm,Cym-n)測(cè)試用例集不唯一確定,對(duì)應(yīng)的測(cè)試效果也不同。,等價(jià)類測(cè)試,弱組合方式 任意m,n m=3,n=22,無法對(duì)整個(gè)有效輸入域進(jìn)行覆蓋,并非真正意義上的完備測(cè)試。一般情況,采用強(qiáng)組合方式,請(qǐng)
20、回答,應(yīng)該用強(qiáng)組合,還是弱組合來設(shè)計(jì)用例?考慮年月日的組合。,等價(jià)類測(cè)試,可以得到30個(gè)(2x3x5)測(cè)試用例。JPGs\2\c21_3.pngJPGs\2\c21_4.png,等價(jià)類測(cè)試,測(cè)試分析完備性方面:覆蓋了 3類情況,普通日期,31號(hào),30號(hào),和2月末。年末日期未覆蓋到。經(jīng)濟(jì)性方面:30個(gè)用例,可以接受。冗余性方面:多個(gè)日期對(duì)應(yīng)普通日期等冗余情況嚴(yán)重在M1中,選取了7月作為典型值設(shè)計(jì)用例,如果取12月,就可以
21、覆蓋年末日期,避免漏洞了。但是,當(dāng)?shù)葍r(jià)類劃分合理時(shí),等價(jià)類中取任何值都不會(huì)影響覆蓋程度。其實(shí)類別劃分不夠合理,應(yīng)增加一個(gè)等價(jià)類來覆蓋年末日期:月份M4:12。,輸入間有關(guān)聯(lián)性,個(gè)體輸入域方法將導(dǎo)致測(cè)試冗余。如何消除冗余呢?在基于決策表的測(cè)試中可以解決。,等價(jià)類測(cè)試,針對(duì)無效等價(jià)類的測(cè)試用例設(shè)計(jì)單缺陷假設(shè):一個(gè)測(cè)試用例僅覆蓋一個(gè)輸入條件的某一個(gè)無效等價(jià)類,其他輸入取有效值。每個(gè)測(cè)試用例不同時(shí)覆蓋兩個(gè)輸入(以上)的無
22、效等價(jià)類。實(shí)際上,可以將每個(gè)無效等價(jià)類看作可能潛伏著缺陷,應(yīng)針對(duì)每類可能的缺陷單獨(dú)進(jìn)行測(cè)試,即其他輸入取有效值。,等價(jià)類測(cè)試,無效等價(jià)類的測(cè)試用例 任意m,n m=3,n=22,假設(shè) x,y 分別有兩個(gè)無效等價(jià)類則將得到2(m+n)個(gè)測(cè)試用例。,等價(jià)類測(cè)試,針對(duì)無效等價(jià)類 JPGs\2\c21_1.png可得到測(cè)試用例JPG
23、s\2\c21_2.png較好地考察了系統(tǒng)的容錯(cuò)能力(健壯性)。,等價(jià)類測(cè)試,輸入域的確定整體輸入域根據(jù)被測(cè)對(duì)象的特性,針對(duì)整體輸入域進(jìn)行等價(jià)劃分。年月日 作為一個(gè)輸入整體。個(gè)體輸入域基于“獨(dú)立性假設(shè)”,將整體輸入域拆分成由各個(gè)輸入條件分別構(gòu)成的個(gè)體輸入域進(jìn)行等價(jià)劃分。年/月/日,三個(gè)獨(dú)立的輸入,等價(jià)類測(cè)試,針對(duì)整體輸入域的測(cè)試 等價(jià)類劃分的簡便方法(1)將某個(gè)輸入條件所有可能的取值劃分
24、為一個(gè)有效等價(jià)類,其余取值劃分為一個(gè)無效等價(jià)類 (2)針對(duì)有效等價(jià)類,通過不斷施加規(guī)則,將滿足規(guī)則和不滿足規(guī)則的數(shù)據(jù)劃分為不同的有效等價(jià)類(3)重復(fù)該步驟,將有效等價(jià)類中不斷劃分為更多的子等價(jià)類,直至無法繼續(xù)劃分為止。最終得到的每個(gè)有效等價(jià)類代表了被測(cè)對(duì)象的一種特定的處理方式,等價(jià)類測(cè)試,針對(duì)整體輸入域的測(cè)試等價(jià)劃分從最小值和最大值開始1800.1.1-2050.12.31系統(tǒng)的不同處理方式 ~ 日期(y-m-
25、d)提出劃分規(guī)則有哪些不同的處理方式?都找出來普通日期(d+1),多種其他日期(d變1, m y年也變)繼續(xù)劃分…,請(qǐng)思考練習(xí),有哪些處理方式,如何提出規(guī)則,劃分等價(jià)類,等價(jià)類測(cè)試,然后繼續(xù)劃分有效等價(jià)類:JPGs\2\c21_p59.png,等價(jià)類測(cè)試,最后將整體有效輸入劃分為6個(gè)有效等價(jià)類,對(duì)應(yīng)6個(gè)測(cè)試用例。,合理有效地進(jìn)行了等價(jià)劃分。無冗余、具有完備性。用例數(shù)量少,有效。,看起來劃分得很好嘛!只用這6個(gè)用例夠嗎?請(qǐng)
26、思考回答??梢园催@種層次來編寫代碼嗎?,從處理方式的結(jié)果上看都包括了,但從處理方式的區(qū)分輸入的角度,是不夠的,會(huì)漏測(cè)很多情況的。個(gè)體域的劃分和強(qiáng)組合用例還是需要的。,等價(jià)類測(cè)試,測(cè)試分析無論是基于個(gè)體域還是整體域,都必須嚴(yán)格保證等價(jià)類所有項(xiàng)的等價(jià)特性,否則,劃分不夠好,都將造成測(cè)試漏洞。方法的關(guān)鍵在于選擇等價(jià)關(guān)系,進(jìn)行合理的劃分。直接基于整體輸入域劃分,不會(huì)產(chǎn)生冗余,但要求測(cè)試人員對(duì)被測(cè)對(duì)像充分了解,且能對(duì)對(duì)象進(jìn)行合理的
27、等價(jià)劃分。,等價(jià)類測(cè)試,捉蟲實(shí)踐:傭金問題的等價(jià)類測(cè)試針對(duì)輸出域(測(cè)試對(duì)象)的等價(jià)類測(cè)試關(guān)注的是某一個(gè)輸出,一般不需要考慮等價(jià)類的組合,且關(guān)注的重點(diǎn)是有效輸出。因此,測(cè)試用例應(yīng)集中于有效等價(jià)類。,等價(jià)類測(cè)試,捉蟲實(shí)踐2:傭金問題的邊界值測(cè)試某酒水銷售公司指派銷售員銷售各種酒水,其中白酒、紅酒和啤酒的單價(jià)分別為168元/瓶、 120元/瓶、5元/瓶。每個(gè)銷售員,白酒每月的最高供應(yīng)量為5000瓶,紅酒為3000瓶,
28、啤酒為30000瓶。各銷售員每月至少需售出白酒50瓶,紅酒30瓶,啤酒300瓶。月末,各銷售員向酒水銷售公司上報(bào)他所在區(qū)域的銷售業(yè)績,酒水銷售公司根據(jù)其銷售額計(jì)算該銷售員的傭金,并作為獎(jiǎng)金發(fā)放。,等價(jià)類測(cè)試,捉蟲實(shí)踐2:傭金問題的邊界值測(cè)試銷售員的傭金計(jì)算方法如下:2萬元以下(含):4%;2萬元(不含)~4.5萬元(含):1%;4.5萬元以上(不含):0.5%。最終將由傭金計(jì)算系統(tǒng)生成月銷售報(bào)告,對(duì)當(dāng)月售出的
29、白酒、紅酒和啤酒總數(shù)進(jìn)行匯總,并計(jì)算銷售公司的總銷售額和各銷售員的傭金,等價(jià)類測(cè)試,銷售員的傭金計(jì)算方法如下:2萬元以下(含):4%;2萬元(不含)~4.5萬元(含):1%;4.5萬元以上(不含):0.5%。,有哪些處理方式?怎么做等價(jià)劃分呢,輸入是3個(gè)銷量,輸出是傭金,請(qǐng)思考回答。,計(jì)算流程如何?有幾個(gè)計(jì)算環(huán)節(jié),等價(jià)類測(cè)試,NextDate問題只有一個(gè)處理環(huán)節(jié),分不同類型的日期來進(jìn)行處理,該環(huán)節(jié)涉及輸入日期和得到下一
30、天日期而傭金問題的3個(gè)銷量不直接對(duì)應(yīng)到傭金的計(jì)算方法。有兩層計(jì)算環(huán)節(jié):3個(gè)銷量-銷售額,銷售額-傭金因?yàn)榈诙佑?jì)算的分段曲線,銷售額為自變量。不同的銷售額,有不同的計(jì)算方法。(處理方式)兩個(gè)環(huán)節(jié)的等價(jià)類,都要覆蓋好,第一個(gè)環(huán)節(jié)需要等價(jià)劃分嗎?,等價(jià)類測(cè)試,有效等價(jià)類JPGs\2\c2_p61_1.png測(cè)試用例JPGs\2\c2_p61_2.png,等價(jià)類測(cè)試,要點(diǎn)回顧原理:通過等價(jià)劃分的方式來將數(shù)據(jù)分片,從中
31、抽取典型數(shù)據(jù)展開測(cè)試,以滿足測(cè)試的完備性和無冗余性。普通日期和各種月末,銷售額分段計(jì)算,處理方式相同,等價(jià)類測(cè)試,用例設(shè)計(jì)選擇被測(cè)對(duì)象(個(gè)體域/整體域,軟件的處理環(huán)節(jié))有效等價(jià)類和無效等價(jià)類等價(jià)類的劃分針對(duì)有效等價(jià)類的測(cè)試用例設(shè)計(jì)針對(duì)無效等價(jià)類的測(cè)試用例設(shè)計(jì),等價(jià)類測(cè)試,個(gè)體輸入域有效等價(jià)類(強(qiáng)組合方式~用例)無效等價(jià)類(單缺陷假設(shè)~用例)整體輸入域輸出域(與輸入域不相似,即第二層處理環(huán)節(jié)),等價(jià)類
32、測(cè)試,目標(biāo)是從理論上追求測(cè)試的完備性和無冗余性基于:獨(dú)立性假設(shè)(個(gè)體域)和單缺陷假設(shè)(無效)當(dāng)?shù)葍r(jià)劃分不合理(即存在漏洞時(shí)),將導(dǎo)致測(cè)試用例的漏洞;如漏掉年末日期。當(dāng)輸入條件之間存在關(guān)聯(lián)時(shí),若基于個(gè)體輸入域進(jìn)行測(cè)試,將導(dǎo)致測(cè)試用例的冗余。,等價(jià)類測(cè)試,測(cè)試實(shí)踐:三角形問題三角形軟件接受三個(gè)整數(shù)a、b和c作為輸入,用作三角形的邊。程序的輸出是由這三條邊確定的三角形類型:等邊三角形、等腰三角形、不等邊三角形或非三角形。
33、整數(shù)a、b和c必須滿足以下條件:C1. 1≤ a ≤ 200C2. 1≤ b ≤ 200C3. 1≤ c ≤ 200,等價(jià)類測(cè)試,測(cè)試實(shí)踐:三角形問題如果輸入值不滿足條件C1、C2和C3中的任何一個(gè),則程序會(huì)通過輸出消息來進(jìn)行通知,如“b的取值不在允許范圍內(nèi)”如果a、b和c滿足C1、C2和C3,則輸出以下四種三角形類型(互相排斥):等邊三角形等腰三角形不等邊三角形非三角形,等價(jià)類測(cè)試,課堂作業(yè)三角形問
34、題的等價(jià)類測(cè)試用例設(shè)計(jì)。寫上班級(jí)(在班序號(hào))、名字。提示:針對(duì)個(gè)體域、整體域還是輸出域來劃分?每種類型對(duì)應(yīng)一種輸出,即處理方式(等價(jià)類),可以分析設(shè)計(jì)等價(jià)劃分規(guī)則。自己用白紙寫,或者寫在實(shí)驗(yàn)報(bào)告本的背面。做好了就可以上交。沒聽課的,一點(diǎn)分析內(nèi)容都沒的,就不要交了。,等價(jià)類測(cè)試,測(cè)試實(shí)踐:三角形問題輸出有4種類型每種類型對(duì)應(yīng)一種輸出,即處理方式(等價(jià)類),可以分析設(shè)計(jì)等價(jià)劃分規(guī)則。列出處理方式進(jìn)
35、行分析。思考:針對(duì)個(gè)體域、整體域還是輸出域來劃分?單個(gè)的邊長a(或b,c) 沒有具體意義,對(duì)應(yīng)不到處理方式,難以下手劃分。應(yīng)從整體域來劃分。(參考NextDate)分析輸出結(jié)果間的關(guān)系,提出規(guī)則進(jìn)行劃分,,等價(jià)類測(cè)試,分析輸出結(jié)果間的關(guān)系,提出規(guī)則進(jìn)行劃分>>是否是三角形? -否 VEC1(非三角形)?。欠袷堑妊切?? -否 EC1(不等邊)-是否是等邊三角形?
36、 -否 EC2(等腰)是 EC3(等邊)是否滿足C1-3, 否 VEC2(邊長出界),等價(jià)類測(cè)試,得到VEC1 = {:a、b和c不構(gòu)成三角形}VEC2 = {:a、b和c不完全滿足C123}EC1 = {:a、b和c構(gòu)成不等腰三角形}EC2 = {:a、b和c構(gòu)成等腰三角形}EC3 = {:a、b和c構(gòu)成等邊三角形}還沒有具體的條件來設(shè)計(jì)用例的輸入值?需要用輸入條件來表示等價(jià)類。,等
37、價(jià)類測(cè)試,EC1 ~ D1 = {:a≠b, a≠c, b≠c,且滿足C1-6}EC2 ~ D21 = {:a=b, a≠c,且滿足C1-6}~ D22,D23EC3 ~ D3 = {:a=b, a=c, b=c,且滿足C1-6}VEC1 ~ VD1 = {:a≥b+c}~ VD12,VD13VEC2 ~ VD21 = {:a200}~ VD22,VD23,等價(jià)類測(cè)試,設(shè)計(jì)用例D1 D21 D3
38、VD11 VD21 基于整體域的等價(jià)劃分,用例設(shè)計(jì),具有無冗余,完備的優(yōu)點(diǎn)。需要選擇合適的測(cè)試對(duì)象,和好的等價(jià)劃分規(guī)則。,黑盒測(cè)試技術(shù),等價(jià)類測(cè)試邊界值測(cè)試,邊界值測(cè)試,思考:運(yùn)用等價(jià)類法設(shè)計(jì)測(cè)試用例,足夠了嗎?能保證不會(huì)漏測(cè)各式各樣的bug嗎?被測(cè)對(duì)象是具體的程序(源代碼,1人甚至整個(gè)部門的)就像病人的癥狀和病因,五花八門不單要驗(yàn)血,還要做X光,B超,小便,把脈,望聞問切…軟件測(cè)試需要運(yùn)用業(yè)界發(fā)展成熟的測(cè)
39、試方法和思想 和個(gè)人的智力經(jīng)驗(yàn)?zāi)芰?邊界值測(cè)試,人們從長期的測(cè)試工作中總結(jié)出一個(gè)實(shí)踐經(jīng)驗(yàn):大量缺陷發(fā)生在被測(cè)對(duì)象的輸入域或輸出域的邊界(即極值)上。如果開發(fā)階段導(dǎo)致缺陷,在邊界處出現(xiàn)錯(cuò)誤的可能性要遠(yuǎn)大于非邊界處。 JPGs\2\TwoPS.java例如:循環(huán)條件可能在應(yīng)該判斷=<時(shí)判斷了<;計(jì)數(shù)器也總是“少記一次”。一種打印出版程序,有兩種文本顯示模式:一種通過虛線指示新一頁;一種則顯示頁面。如
40、果光標(biāo)位于一頁的最后一行,增加新文本,會(huì)有異常。在頁面模式下新文本丟失,前后兩頁都沒有顯示。,邊界值測(cè)試,測(cè)試思想:在被測(cè)對(duì)象的邊界及邊界附近設(shè)計(jì)測(cè)試用例。用例設(shè)計(jì):選擇對(duì)象、確定邊界和鄰域、設(shè)計(jì)用例測(cè)試用例設(shè)計(jì):1 選擇被測(cè)對(duì)象2 確定邊界3 確定鄰域4 設(shè)計(jì)用例,邊界值測(cè)試,測(cè)試用例設(shè)計(jì)1 選擇被測(cè)對(duì)象:即輸入域或輸出域,以進(jìn)行后續(xù)的邊界值測(cè)試用例設(shè)計(jì) 日期/銷售額2 確定邊界:即域的邊界,
41、確保覆蓋被測(cè)對(duì)象所有可能的邊界3 確定鄰域:即域邊界附近的鄰域范圍,便于及時(shí)發(fā)現(xiàn)所有潛伏在邊界附近的缺陷4 設(shè)計(jì)用例:即從邊界及其鄰域抽取測(cè)試數(shù)據(jù),設(shè)計(jì)測(cè)試用例,邊界值測(cè)試,1 輸入域整體輸入域:由多個(gè)輸入條件共同構(gòu)成的具有一定實(shí)際意義的輸入域邊界通常很清晰,很容易展開測(cè)試但難以覆蓋所有隱含邊界,尤其對(duì)于各個(gè)輸入條件之間存在較為復(fù)雜的約束關(guān)系的情況。(如日期的各種月末。)個(gè)體輸入域:由各個(gè)輸入條件分別構(gòu)成的單個(gè)輸入域
42、的集合,邊界值測(cè)試,2 確定邊界對(duì)于某個(gè)輸入條件而言,邊界的確定可參照如下原則:若輸入條件規(guī)定了取值范圍,則以該范圍作為邊界若輸入條件規(guī)定了值的個(gè)數(shù),則以值的個(gè)數(shù)為邊界若輸入域是有序集合(如有序表、順序文件等),則選取集合中特定次序的數(shù)據(jù)作為邊界,如第一個(gè)或最后一個(gè)數(shù)據(jù)等如16進(jìn)制所用到的字母 a-f,a和f就是邊界,邊界值測(cè)試,2 確定邊界實(shí)際上,針對(duì)某個(gè)輸入條件確定邊界點(diǎn)時(shí),可利用如下的思路:在需求描述中,
43、尋找最大極限邊界,如最高/最低,最前/最后等。在需求描述中,尋找其他邊界,其特征是:當(dāng)在某點(diǎn)附近的極小鄰域內(nèi),系統(tǒng)處理方式完全不同。即對(duì)應(yīng)被測(cè)對(duì)象輸出發(fā)生變化的臨界點(diǎn)。關(guān)注在軟件內(nèi)部的邊界點(diǎn),稱為次邊界條件或內(nèi)部邊界條件。比如文本框只接受英文字母 @AB…Z[‘a(chǎn)b…z{,并且,編程中,輸入條件都須要用某個(gè)數(shù)據(jù)變量來表示,有其類型的取值范圍,這也是邊界。Int: -32768~32767,如某些分段計(jì)算的函數(shù)。傭金的
44、例子,工資收稅。,如2的乘方(是否會(huì)溢出)、ASCII字符表等。需要有一定編程經(jīng)驗(yàn),在單元測(cè)試中檢查。,邊界值測(cè)試,,找購買數(shù)量的邊界,請(qǐng)回答,邊界值測(cè)試,2 確定邊界 個(gè)體輸入域以個(gè)體輸入域?yàn)楸粶y(cè)對(duì)象時(shí),需分別針對(duì)每個(gè)輸入條件的輸入域(即每個(gè)個(gè)體輸入域) 確定其邊界點(diǎn)并基于獨(dú)立性假設(shè)即假設(shè)各個(gè)輸入條件之間相互獨(dú)立,不產(chǎn)生相互影響,即不具有相互依賴關(guān)系。也就是說,當(dāng)針對(duì)某個(gè)輸入條件確定邊界點(diǎn)時(shí),不考慮其他輸
45、入條件可能對(duì)該輸入條件所產(chǎn)生的任何影響。,邊界值測(cè)試,捉蟲實(shí)踐1:NextDate的邊界值測(cè)試針對(duì)個(gè)體輸入域輸入條件:年份、月份、日期根據(jù)測(cè)試需求和日期常識(shí)得到邊界:,實(shí)際上,各輸入條件是有關(guān)聯(lián)的,漏掉很多隱含邊界。以下按課本講解(課本上邊界法在等價(jià)類法的前面),不多討論。,這樣覆蓋了所有的邊界嗎?請(qǐng)回答,月份的邊界測(cè)試數(shù)據(jù),可以再減少嗎?請(qǐng)回答,邊界值測(cè)試,3 鄰域范圍對(duì)于每個(gè)輸入條件的每個(gè)邊界點(diǎn)(設(shè)為P點(diǎn)),需在該點(diǎn)
46、附近確定大小為1的鄰域。然后,基于所有輸入條件的所有邊界點(diǎn)及其鄰域來設(shè)計(jì)測(cè)試用例。注意:這里的“1”是指1個(gè)單位長度,并非數(shù)字意義上的“1”。應(yīng)根據(jù)對(duì)象的具體意義和測(cè)試分析靈活設(shè)置。,邊界值測(cè)試,4 測(cè)試用例的設(shè)計(jì)4.1 測(cè)試數(shù)據(jù)的選擇窮舉法在每個(gè)邊界點(diǎn)的鄰域范圍內(nèi)取所有數(shù)據(jù)優(yōu)勢(shì):邊界及其鄰域范圍內(nèi)所有數(shù)據(jù)均可測(cè)試到不足:鄰域內(nèi)的測(cè)試數(shù)據(jù)較多,導(dǎo)致的測(cè)試負(fù)擔(dān)重,邊界值測(cè)試,4 測(cè)試用例的設(shè)計(jì)典型
47、值法在邊界點(diǎn)p處,鄰域?yàn)閍。選擇 p-a , p , p+a 這三個(gè)值作為測(cè)試數(shù)據(jù)優(yōu)勢(shì):測(cè)試數(shù)據(jù)包含了邊界點(diǎn)本身以及相對(duì)遠(yuǎn)離該邊界點(diǎn)的鄰域數(shù)據(jù),具有典型性,且數(shù)據(jù)量大大降低,邊界值測(cè)試,4 測(cè)試用例的設(shè)計(jì)4.2 邊界組合方式強(qiáng)邊界法測(cè)試用例要覆蓋所有輸入條件的所有邊界組合。即每個(gè)用例的多個(gè)輸入條件同時(shí)取邊界的情況??蓽y(cè)試到所有的邊界組合,但不利于缺陷的隔離和定位,并且用例數(shù)量較大。,邊界值測(cè)試,4 測(cè)試用例
48、的設(shè)計(jì)弱邊界法基于單缺陷假設(shè):即認(rèn)為,被測(cè)對(duì)象只要在某個(gè)輸入條件的某個(gè)邊界出錯(cuò),則在任何包含該輸入邊界的其他情況下也會(huì)出錯(cuò)。ymd>>策略:用例中,只有一個(gè)輸入條件取值為邊界鄰域數(shù)據(jù),其余輸入條件取正常值(不取邊界)。有利于快速隔離和定位邊界缺陷,降低測(cè)試用例的數(shù)量。,邊界值測(cè)試,,,邊界值測(cè)試,,,邊界值測(cè)試,,隨著輸入條件和邊界點(diǎn)的增長,測(cè)試用例增長速度非???。一般采用 典型值法+弱邊界法另外,也可以
49、采取自動(dòng)化方法,自動(dòng)運(yùn)行大量測(cè)試用例,邊界值測(cè)試,捉蟲實(shí)踐1:NextDate的邊界值測(cè)試針對(duì)個(gè)體輸入域輸入條件:年份、月份、日期根據(jù)測(cè)試需求和日期常識(shí)得到邊界:,邊界值測(cè)試,基于單缺陷假設(shè),選擇典型值法+弱邊界方案,得到測(cè)試用例。JPGs\2\c21_p47.png,邊界值測(cè)試,測(cè)試分析冗余和漏洞都較為嚴(yán)重(大量的普通日期和無效日期)并且,閏月情況沒有測(cè)試到。然而,邊界值法主要關(guān)注邊界上表現(xiàn)的缺陷,只
50、要能以少量用例覆蓋所有可能的邊界,就不應(yīng)視作冗余和漏洞。以上漏洞可以通過等價(jià)類等方法加以避免,課本上的實(shí)驗(yàn)數(shù)據(jù),偶有小錯(cuò)誤,不必糾結(jié),邊界值測(cè)試,測(cè)試分析實(shí)際上,單缺陷假設(shè)本身存在不合理,遺漏了邊界組合情況兩個(gè)邊界組合,和三個(gè)邊界組合都沒有測(cè)試用例。對(duì)應(yīng)數(shù)量為 6x6x3=108 和 6x6x6=216 個(gè)。并且,這兩只有兩個(gè)邊界。如果實(shí)際的邊界條件更多,邊界組合的用例數(shù)量很大??梢酝ㄟ^隨機(jī)測(cè)試或者正交表方法來做補(bǔ)
51、充測(cè)試獨(dú)立性假設(shè)也不大合理不同的月份的日期有不同的邊界,邊界值測(cè)試,捉蟲實(shí)踐1:NextDate的邊界值測(cè)試針對(duì)整體輸入域邊界點(diǎn):最小值1800-1-1和最大值2050-12-31在個(gè)體輸入域的基礎(chǔ)上,補(bǔ)充6個(gè)測(cè)試用例即可。,難以覆蓋所有隱含邊界,尤其對(duì)于各個(gè)輸入條件之間存在較為復(fù)雜的約束關(guān)系的情況。建議:可以依據(jù)等價(jià)劃分,分析歸納出隱含的邊界,然后設(shè)計(jì)用例覆蓋,邊界值測(cè)試,捉蟲實(shí)踐2:傭金問題的邊界值測(cè)試某酒水
52、銷售公司指派銷售員銷售各種酒水,其中白酒、紅酒和啤酒的單價(jià)分別為168元/瓶、 120元/瓶、5元/瓶。每個(gè)銷售員,白酒每月的最高供應(yīng)量為5000瓶,紅酒為3000瓶,啤酒為30000瓶。各銷售員每月至少需售出白酒50瓶,紅酒30瓶,啤酒300瓶。月末,各銷售員向酒水銷售公司上報(bào)他所在區(qū)域的銷售業(yè)績,酒水銷售公司根據(jù)其銷售額計(jì)算該銷售員的傭金,并作為獎(jiǎng)金發(fā)放。,邊界值測(cè)試,捉蟲實(shí)踐2:傭金問題的邊界值測(cè)試銷售員的傭金計(jì)算方
53、法如下:2萬元以下(含):4%;2萬元(不含)~4.5萬元(含):1%;4.5萬元以上(不含):0.5%。最終將由傭金計(jì)算系統(tǒng)生成月銷售報(bào)告,對(duì)當(dāng)月售出的白酒、紅酒和啤酒總數(shù)進(jìn)行匯總,并計(jì)算銷售公司的總銷售額和各銷售員的傭金,NextDate問題只有一個(gè)處理環(huán)節(jié),分不同類型的日期來進(jìn)行處理,該環(huán)節(jié)涉及輸入日期和得到下一天日期而傭金問題的3個(gè)銷量不直接對(duì)應(yīng)到傭金的計(jì)算方法。有兩層計(jì)算環(huán)節(jié):3個(gè)銷量-銷售額,銷售
54、額-傭金因?yàn)榈诙佑?jì)算的分段曲線,銷售額為自變量。不同的銷售額,有不同的計(jì)算方法。兩個(gè)環(huán)節(jié)產(chǎn)生的邊界值,都要覆蓋好最低最高銷量,即1.35 和 135 是第一個(gè)環(huán)節(jié)導(dǎo)致的邊界值。,,邊界值測(cè)試,用例設(shè)計(jì)選擇1元為鄰域單位長度JPGs\2\c21_50.png,邊界值測(cè)試,測(cè)試分析用例003 004為19997和20002元。超出鄰域1元的范圍,這在實(shí)際中是常見的。當(dāng)銷售額為20002元時(shí),白酒、紅酒和啤酒銷售 69、
55、50和482 也符合。設(shè)計(jì)用例時(shí),應(yīng)考慮被測(cè)系統(tǒng)業(yè)務(wù)的實(shí)際情況。條件允許,也可以增加測(cè)試用例。,邊界值測(cè)試,邊界值測(cè)試小結(jié)個(gè)體輸入域:獨(dú)立性假設(shè)和單缺陷假設(shè)(弱邊界法)。是一種最基本、最簡單的黑盒測(cè)試方法,通常可作為等價(jià)類測(cè)試的補(bǔ)充邊界值測(cè)試關(guān)注的是系統(tǒng)邊界(而非處理方式)。因而從一般角度看該法設(shè)計(jì)的測(cè)試用例往往具有較大的系統(tǒng)冗余與遺漏,但這并不影響該法的有效性。就邊界而言,該法設(shè)計(jì)的用例并不存在冗余。遺漏也將在后
56、續(xù)的等價(jià)類測(cè)試中進(jìn)行覆蓋。,黑盒測(cè)試技術(shù),等價(jià)類測(cè)試邊界值測(cè)試保險(xiǎn)金案例,保險(xiǎn)金案例,案例說明主要為投保人計(jì)算其需要購買的車險(xiǎn),一年內(nèi)的保險(xiǎn)金計(jì)算公式為: 保險(xiǎn)金 = 1000元 x 年齡系數(shù) – 安全駕駛折扣且車險(xiǎn)的計(jì)算與年齡和駕照分?jǐn)?shù)有關(guān),還需滿足如下條件:,保險(xiǎn)金案例,且車險(xiǎn)的計(jì)算還需滿足如下條件:投保人必須是年滿16歲,且不足80歲的人如果投保人駕照上的當(dāng)前分?jǐn)?shù)高于門限分?jǐn)?shù)(見表),則投保時(shí)可給予其安全
57、駕駛折扣年齡系數(shù)和安全駕駛折扣見表JPGs\2\c21_p83.png,保險(xiǎn)金 = 1000元 x 年齡系數(shù) – 安全駕駛折扣,保險(xiǎn)金案例,且車險(xiǎn)的計(jì)算還需滿足如下條件:投保人駕照上的分?jǐn)?shù)初始為 12分,每當(dāng)違反交通規(guī)則時(shí),將以整數(shù)為單位扣掉1分或若干分如果投保人駕照上的當(dāng)前分?jǐn)?shù)高于門限分?jǐn)?shù)(見表),則投保時(shí)可給予其安全駕駛折扣如果投保人駕照上的當(dāng)前分?jǐn)?shù)被扣至達(dá)到甚至低于零分,則該投保人的駕照被吊銷大家自己看下課本,熟
58、悉下題目 P83分析計(jì)算公式和條件的實(shí)際意義思考,輸入間有否關(guān)聯(lián)性?,保險(xiǎn)金案例,典型的函數(shù)級(jí)別的案例。沒有明顯的業(yè)務(wù)操作流程,只需要從數(shù)據(jù)擇優(yōu)的角度來設(shè)計(jì)案例。可采用邊界值、等價(jià)類、決策表等方法設(shè)計(jì)用例輸入條件有哪些?投保人的年齡、駕照上的當(dāng)前分?jǐn)?shù) 保險(xiǎn)金 = 1000元 x 年齡系數(shù) – 安全駕駛折扣,保險(xiǎn)金案例,思考一下:年齡和分?jǐn)?shù),有否相關(guān)性?JPG\c21_p83.png
59、有相關(guān)性,分?jǐn)?shù)還蠻復(fù)雜的年齡~系數(shù),門限分?jǐn)?shù),分?jǐn)?shù)~門限分?jǐn)?shù)利用邊界值、等價(jià)類、決策表法來設(shè)計(jì)測(cè)試用例,請(qǐng)回答,年齡和分?jǐn)?shù)的相關(guān)性,保險(xiǎn)金案例,邊界值法(回顧)思想:在被測(cè)對(duì)象的邊界及邊界附近設(shè)計(jì)測(cè)試用例。測(cè)試用例設(shè)計(jì):1 選擇被測(cè)對(duì)象 2 確定邊界3 確定鄰域4 設(shè)計(jì)用例,保險(xiǎn)金案例,提問:選擇哪個(gè)測(cè)試對(duì)象來考察邊界?為什么?思考幾分鐘,不要看課本,看了也沒有用。提示:輸入域
60、(個(gè)體域/整體域)、輸出域(中間環(huán)節(jié))?在哪種對(duì)象上面找邊界?認(rèn)真分析對(duì)比 NextDate 傭金 都用了哪些測(cè)試對(duì)象。,請(qǐng)回答,個(gè)體域可以嗎?或者回答整體域可以嗎?輸出域呢?,保險(xiǎn)金案例,提問:邊界法選擇哪個(gè)測(cè)試對(duì)象?個(gè)體輸入域:可以分別針對(duì)每個(gè)輸入條件的輸入域確定邊界點(diǎn)采用 年齡和分?jǐn)?shù)的個(gè)體輸入域分析邊界整體輸入域:邊界通常很清晰,很容易展開測(cè)試。但難以覆蓋所有隱含邊界(如Nextdate),尤
61、其對(duì)于各個(gè)輸入條件之間存在較為復(fù)雜的約束關(guān)系的情況。年齡和分?jǐn)?shù)不存在整體邊界,不易于來建模包含隱含邊界。,保險(xiǎn)金案例,提問:邊界法選擇哪個(gè)測(cè)試對(duì)象?輸出域?思考一下分析具體的輸出域計(jì)算>>銷售員賣酒的傭金(2個(gè)計(jì)算環(huán)節(jié))輸入3種酒的銷售量>>計(jì)算銷售額>>分段計(jì)算傭金年齡+積分+復(fù)雜約束條件->保險(xiǎn)金(僅一個(gè)計(jì)算環(huán)節(jié)),請(qǐng)回答,系統(tǒng)有幾個(gè)計(jì)算環(huán)節(jié)?,邊界值測(cè)試,確定邊界:
62、個(gè)體輸入域以個(gè)體輸入域?yàn)楸粶y(cè)對(duì)象時(shí),需分別針對(duì)每個(gè)輸入條件的輸入域確定其邊界點(diǎn)。并遵循獨(dú)立性假設(shè),即假設(shè)各個(gè)輸入條件之間相互獨(dú)立,不產(chǎn)生相互影響,即不具有相互依賴關(guān)系。查看需求->思考一下,有哪些分?jǐn)?shù),年齡的邊界(P83)年齡(6個(gè)):16, 25, 35, 45, 60, 80;分?jǐn)?shù)(6個(gè)):0, 5, 7, 9, 11, 12,保險(xiǎn)金案例,邊界年齡(6個(gè)):16, 25, 35, 45, 60, 80
63、;分?jǐn)?shù)(6個(gè)):0, 5, 7, 9, 11, 12測(cè)試數(shù)據(jù) p-a, p, p+a:年齡 (18個(gè)):15, 16, 17, 24, 25, 26, 34, 35, 36, 44, 45, 46, 59, 60, 61, 79, 80, 81;分?jǐn)?shù) (13個(gè)):-1, 0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,邊界值測(cè)試,弱邊界法基于單缺陷假設(shè):即被測(cè)對(duì)象只要在某個(gè)
64、輸入條件的某個(gè)邊界出錯(cuò),則在任何包含該輸入邊界的情況下也會(huì)出錯(cuò)。策略:用例中,只有一個(gè)輸入條件取值為邊界鄰域數(shù)據(jù),其余輸入條件取正常值(相鄰邊界點(diǎn)之間的中值)。有利于快速隔離和定位邊界缺陷,降低測(cè)試用例的數(shù)量。,邊界值測(cè)試,,,保險(xiǎn)金案例,測(cè)試數(shù)據(jù) 年齡 (18個(gè)) 分?jǐn)?shù) (13個(gè))邊界:年齡(6個(gè)):16, 25, 35, 45, 60, 80; 分?jǐn)?shù)(6個(gè)):0, 5, 7, 9, 11, 12用例設(shè)
65、計(jì):針對(duì)年齡的測(cè)試數(shù)據(jù),分?jǐn)?shù)應(yīng)取相鄰兩邊界點(diǎn)間的正常值用例數(shù)量為 18x(6-1) + 13x(6-1) = 155個(gè)。,保險(xiǎn)金案例,部分邊界值的用例JPGs\2\c21_p84.png,保險(xiǎn)金案例,測(cè)試用例分布圖JPGs\2\c21_p85.png顯然,由于邊界點(diǎn)多,盡管僅有2個(gè)輸入,弱組合下的測(cè)試用例數(shù)量也很多。因?yàn)樾枰《喾N 中值 和 邊界 的組合。,黑盒測(cè)試技術(shù),等價(jià)類測(cè)試邊界值測(cè)試保險(xiǎn)金案例-等價(jià)類法 決策表
66、法,保險(xiǎn)金案例,等價(jià)類法個(gè)體輸入域?qū)δ挲g和分?jǐn)?shù)的等價(jià)類劃分,(P83)處理方式 -> 劃分規(guī)則 年齡段;是否給予安全駕駛折扣 JPGs\2\c21_p85_2.png,請(qǐng)回答分析,系統(tǒng)的處理方式。如何進(jìn)行個(gè)體的劃分,保險(xiǎn)金案例,分?jǐn)?shù)域上存在過劃分,利用強(qiáng)組合方式 5x5=25。有冗余,需要采用決策表法化簡合并。JPGs\2\c21_p85_3.png合并為10個(gè)等價(jià)類,每個(gè)年齡段 2個(gè),消除了冗
67、余分別對(duì)應(yīng)“有無安全駕駛折扣”的情況,很合理。相比于 NextDate的年月日 ,分?jǐn)?shù)和年齡的關(guān)聯(lián)復(fù)雜程度要低很多,合并后得到很好的用例設(shè)計(jì)。,保險(xiǎn)金案例,等價(jià)類法整體輸入域?qū)嶋H上,保險(xiǎn)金問題并不是個(gè)很復(fù)雜的系統(tǒng)。若就整體輸入域進(jìn)行等價(jià)類劃分,用例設(shè)計(jì)會(huì)更簡單。二元組年齡段;是否給予安全駕駛折扣劃分規(guī)則,思考一下,1-2分鐘,沒必要翻書的:JPGs\2\c21_p86.png劃分為10個(gè),與決策表的結(jié)果相同
68、。相比而言,設(shè)計(jì)工作更加簡單。,請(qǐng)回答分析,系統(tǒng)的處理方式。如何進(jìn)行整體的劃分,保險(xiǎn)金案例,案例小結(jié)包含的功能點(diǎn)很單一,不涉及業(yè)務(wù)流程。但包含相對(duì)復(fù)雜的輸入/輸出計(jì)算關(guān)系。需針對(duì)輸入域和輸出域進(jìn)行關(guān)鍵數(shù)據(jù)的覆蓋測(cè)試該案例的測(cè)試用例設(shè)計(jì)以測(cè)試數(shù)據(jù)的選擇為主重點(diǎn)在于如何選擇典型數(shù)據(jù)來測(cè)試所有情況下的業(yè)務(wù)計(jì)算難點(diǎn)是如何高效地設(shè)計(jì)測(cè)試用例,達(dá)到測(cè)試的完備和無冗余該案例的測(cè)試應(yīng)盡量考慮以自動(dòng)化測(cè)試為主,黑盒測(cè)試技術(shù),等價(jià)
69、類測(cè)試邊界值測(cè)試保險(xiǎn)金案例實(shí)驗(yàn)一,實(shí)驗(yàn)一,題目:PreviousDate 前一天日期測(cè)試以下程序(用戶需求):該程序有三個(gè)輸入變量year、month、day分別作為輸入日期的年、月、日。要求輸入year、month和day均為整數(shù)值,并且滿足:1800≤year≤2020,1≤month≤12 和1≤day≤31。通過程序輸出該日期在日歷上前一天的日期(1) 這個(gè)軟件產(chǎn)品的系統(tǒng)需求規(guī)格說明書中,要對(duì)用戶輸入的日期考慮
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 實(shí)驗(yàn)2 黑盒測(cè)試
- 實(shí)驗(yàn) 黑盒測(cè)試1
- 黑盒測(cè)試
- 實(shí)驗(yàn)1黑盒測(cè)試(一)
- 第2講 抗原(第3講) (2)(1)
- 實(shí)驗(yàn)1-動(dòng)態(tài)黑盒測(cè)試
- 軟件測(cè)試 黑盒測(cè)試
- 黑盒測(cè)試的測(cè)試用例設(shè)計(jì)方法[1]
- 黑盒測(cè)試技術(shù)
- 手機(jī)黑盒測(cè)試
- 第1-2講
- 選修1 第2講
- 軟件測(cè)試黑盒測(cè)試代碼
- 黑盒測(cè)試 測(cè)試計(jì)劃(實(shí)例)
- 實(shí)驗(yàn)一 黑盒測(cè)試
- 第2講簡易邏輯(測(cè)試題)
- 黑盒測(cè)試的方法
- 任務(wù)3黑盒測(cè)試
- 上機(jī)三黑盒測(cè)試
- 什么是黑盒測(cè)試
評(píng)論
0/150
提交評(píng)論