軟件質(zhì)量與測試第三次講課_第1頁
軟件質(zhì)量與測試第三次講課_第2頁
軟件質(zhì)量與測試第三次講課_第3頁
軟件質(zhì)量與測試第三次講課_第4頁
軟件質(zhì)量與測試第三次講課_第5頁
已閱讀5頁,還剩56頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

黑盒測試等價類測試1等價類測試原因等價類劃分的步驟確定等價類的一般原則測試用例的設(shè)計討論等價類和劃分21產(chǎn)生原因窮舉測試是不可能的任務(wù)X,Y取整數(shù),字長32位,可能采用的測試數(shù)據(jù)組:

232×232=264,窮舉測試合法輸入,不同執(zhí)行路徑數(shù)達(dá)520條,需5億年。如何選擇測試用例?只能從大量的可能數(shù)據(jù)中選擇一部分作為測試用例等價類劃分完備的測試無冗余的測試等價類測試31產(chǎn)生原因等價類測試基本思想:把程序的輸入域劃分成若干部分,然后從每個部分中選取少數(shù)代表性數(shù)據(jù)當(dāng)作測試用例,每一類的代表性數(shù)據(jù)在測試中的作用等價于這一類中的其它值。輸入域劃分互不相交的子集子集的并是整個集合完備性無冗余1234選擇代表元素4等價類測試原因等價類劃分的步驟確定等價類的一般原則測試用例的設(shè)計討論等價類和劃分52等價類和劃分等價類測試等價類等價類的性質(zhì)設(shè)R是非空集合A上的等價關(guān)系,對任意,令,則稱為x關(guān)于R的等價類,簡記做[x]。

,且;表明任何等價類都是集合A的非空子集

若xRy,則[x]=x[y];

以上兩性質(zhì)表明在A中任取兩個元素,它們的等價類或相等,或不交

若,則;

。表明所有等價類的并集就是A62等價類和劃分等價類測試劃分的含義是將整體分成小塊,使得所有事物都在某個小塊中,不會遺漏。給定集合B以及B的一組子集A1,A2,…,An,這些子集是B的一個劃分,當(dāng)且僅當(dāng):,且,這樣的一個劃分是一組子集:,所以我們常把單個子集看作是劃分的元素。1234集合A上的等價關(guān)系與集合A的劃分一一對應(yīng)劃分7等價類測試原因等價類劃分的步驟確定等價類的一般原則測試用例的設(shè)計討論等價類和劃分83劃分步驟等價類測試通過分析需求規(guī)格說明,劃分等價類,列出等價類表設(shè)計測試用例9等價類測試原因等價類劃分的步驟確定等價類的一般原則測試用例的設(shè)計討論等價類和劃分103確定等價類的一般原則等價類測試有效等價類/無效等價類

有效等價類:對于程序的規(guī)格說明而言,是合理的、有意義的輸入數(shù)據(jù)構(gòu)成的集合無效等價類:對于程序的規(guī)格說明而言,是不合理的、無意義的輸入數(shù)據(jù)構(gòu)成的集合

用于檢驗程序是否實現(xiàn)了規(guī)格說明預(yù)先規(guī)定的性能和功能

用于檢查程序中功能和性能的實現(xiàn)是否不符合規(guī)格說明要求(檢驗程序?qū)o效數(shù)據(jù)的處理)不能僅接受合理數(shù)據(jù),還要經(jīng)受意外的考驗,接受無效或不合理的數(shù)據(jù)113確定等價類的一般原則等價類測試1.若輸入條件規(guī)定了取值范圍或值的個數(shù),則可確立一個有效等價類和兩個無效等價類。程序的規(guī)格說明中,要求輸入滿足:“…項數(shù)可從1到999…”

例有效等價類是“1≤項數(shù)≤999”兩個無效等價類是“項數(shù)<1”或“項數(shù)>999”。1999x有效等價類無效等價類無效等價類123確定等價類的一般原則等價類測試2.若輸入條件規(guī)定了輸入值的集合,或規(guī)定了“必須如何”的條件,則可確立一個有效等價類和一個無效等價類例變量標(biāo)識符規(guī)定為“以字母打頭的……串”。有效等價類是“所有以字母打頭的變量標(biāo)識符”無效等價類是“所有不以字母打頭的變量標(biāo)識符”133確定等價類的一般原則等價類測試3.若輸入條件是一個布爾量,則可確定一個有效等價類和一個無效等價類4.若規(guī)定了輸入數(shù)據(jù)的一組值,且程序要對每個輸入值分別進(jìn)行處理。則可為每一個輸入值確立一個有效等價類,此外針對這組值確立一個無效等價類,它是所有不允許的輸入值的集合。143確定等價類的一般原則等價類測試5.規(guī)定了輸入數(shù)據(jù)必須遵守的規(guī)則,則可以確立一個有效等價類(符合規(guī)則)和若干個無效等價類(從不同角度違反規(guī)則)6.若確知已劃分等價類中各元素在程序中處理方式不同,則應(yīng)將此等價類進(jìn)一步劃分成更小的等價類153確定等價類的一般原則等價類測試等價類測試適用于:可用數(shù)量衡量的獨立變量布爾變量邏輯變量等價類測試不適用于:相互有依賴關(guān)系的變量16等價類測試原因等價類劃分的步驟確定等價類的一般原則測試用例的設(shè)計討論等價類和劃分175測試用例設(shè)計等價類測試為每個等價類規(guī)定一個唯一的編號;設(shè)計一個新的測試用例,使之盡可能多地覆蓋尚未被覆蓋的有效等價類,重復(fù)這一步直至所有的有效等價類都被覆蓋為止;設(shè)計一個新的測試用例,使其僅覆蓋一個尚未被覆蓋的無效等價類,重復(fù)這一步直至所有的無效等價類都被覆蓋為止。185測試用例設(shè)計等價類測試基于假設(shè):輸入變量是真正獨立的;分類的決定因素:<一般,健壯>,<單缺陷(弱),多缺陷(強)>;方法分類:弱一般等價類測試、強一般等價類測試、弱健壯等價類測試、強健壯等價類測試;可用于程序的輸入定義域或輸出值域195測試用例設(shè)計等價類測試弱一般等價類測試舉例強一般等價類測試弱健壯等價類測試強健壯等價類測試205測試用例設(shè)計--弱一般等價類等價類測試等價類有效值:a<=x1<=b無效值:x1<a,orx1>b有效值:c<=x2<=d無效值:x2<c,orx2>d

abcdx2x1有效輸入則整個坐標(biāo)軸均為x1的有效值a=?b=?“單缺陷”假設(shè):失效極少是由兩個或多個缺陷的同時發(fā)生引起的弱一般等價類測試通過使用一個測試用例中的每個等價類區(qū)間的一個變量實現(xiàn)215測試用例設(shè)計--弱一般等價類等價類測試abcdx2x1efg取值區(qū)間x1:[a,b),[b,c),[c,d]x2:[e,f),[f,g]無效值:x1<a,orx1>d無效值:x2<e,orx2>g基于單缺陷、正常值(一般)225測試用例設(shè)計--弱一般等價類等價類測試基于單缺陷、正常值abcdx2x1efg有效等價類對于x1M1={x1|a<=x1<b}M2={x1|b<=x1<c}M3={x1|c<=x1<=d}對于x2N1={x2|e<=x2<f}N2={x2|f<=x1<=g}測試用例輸入等價類輸入等價類1M1,N1M1,N22M2,N2M2,N13M3,N1M3,N2對于n變量,設(shè)第i個變量的有效等價類是mi個,則測試用例總數(shù):max(mi)個。235測試用例設(shè)計—強一般等價類等價類測試基于多缺陷、正常值abcdx2x1有效值:a<=x1<=b無效值:x1<a,orx1>b有效值:c<=x2<=d無效值:x2<c,orx2>d與弱一般等價類相同245測試用例設(shè)計--強一般等價類等價類測試基于多缺陷、正常值(一般)abcdx2x1efg取值區(qū)間x1:[a,b),[b,c),[c,d]x2:[e,f),[f,g]無效值:x1<a,orx1>d無效值:x2<e,orx2>g如果整個坐標(biāo)軸均為x1的有效值,則強、弱等價類的測試用例是一樣的。255測試用例設(shè)計--強一般等價類等價類測試基于多缺陷、正常值(一般)abcdx2x1efg測試用例輸入等價類1M1,N12M1,N23M2,N14M2,N25M3,N16M3,N2對于n變量,設(shè)第i個變量的有效等價類是mi個,則測試用例總數(shù):m1*m2*…*mn基于多缺陷假設(shè)需要等價類笛卡爾積的每個元素對應(yīng)的測試用例265測試用例設(shè)計--強一般等價類等價類測試笛卡兒積能保證兩種意義上的“完備性”

覆蓋所有的等價類有可能的輸入組合中的一個275測試用例設(shè)計——弱健壯等價類等價類測試基于單缺陷、健壯值

abcdx2x1單缺陷與多缺陷假設(shè)產(chǎn)生弱等價類與強等價類測試之分是否進(jìn)行無效數(shù)據(jù)的處理產(chǎn)生健壯與一般等價類測試之分285測試用例設(shè)計——弱健壯等價類等價類測試弱--基于單缺陷假設(shè)健壯--考慮無效值對有效輸入,使用每個有效等價類的一個值對無效輸入,測試用例將擁有一個無效值并保持其余的值都是有效的

295測試用例設(shè)計——弱健壯等價類等價類測試基于單缺陷、健壯值無效等價類對于x1M4={x1|x1<a}M5={x1|x1>d}對于x2N3={x2|x2<e}N4={x2|x2>g}測試用例補充輸入等價類1,2(M4,N1)(M4,N2)3,4(M5,N1)(M5,N2)對于n變量,設(shè)第i個變量的有效等價類是mi個,無效等價類是li個,則測試用例總數(shù):abcdx2x1efgmax(mi)+(l1+l2+…+ln)個。305測試用例設(shè)計——弱健壯等價類等價類測試基于單缺陷、健壯值

規(guī)格說明常常未定義無效測試用例所預(yù)期的輸出是什么abcdx2x1efg存在的問題315測試用例設(shè)計——強健壯等價類等價類測試基于多缺陷、健壯值

abcdx2x1325測試用例設(shè)計——強健壯等價類等價類測試基于多缺陷、健壯值取值區(qū)間x1:[a,b),[b,c),[c,d]x2:[e,f),[f,g]無效值:x1<a,orx1>d無效值:x2<e,orx2>gabcdx2x1efg335測試用例設(shè)計——強健壯等價類等價類測試基于多缺陷、健壯值測試用例輸入等價類1,2(M1,N1)(M1,N2)3,4(M2,N1)(M2,N2)5,6(M3,N1)(M3,N2)7,8(M4,N1)(M4,N2)9,10(M5,N1)(M5,N2)11,12(M1,N3)(M1,N4)……對于n變量,設(shè)第i個變量的有效等價類是mi個,無效等價類是li個,則測試用例總數(shù):abcdx2x1efg(m1+l1)*(m2+l2)

*…*(mn+ln)345測試用例設(shè)計—舉例等價類測試?yán)唬喝切螁栴}(不考慮邊長限制)輸入定義域測試

考慮三角形類型

考慮三角形是否存在輸入條件的等價類D1={<a,b,c>|a>=b+c}D2={<a,b,c>|b>=a+c}D3={<a,b,c>|c>=a+b}輸入條件的等價類D4={<a,b,c>|a=b=c}D5={<a,b,c>|a=b,a<>c}D6={<a,b,c>|a=c,b<>c}D7={<a,b,c>|b=c,a<>c}D8={<a,b,c>|a<>b,a<>c,b<>c}D1-1={<a,b,c>|a=b+c}D1-2={<a,b,c>|a>b+c}三角形輸入域非三角形等邊三角形等腰三角形不等邊三角形a>=b+cb>=a+cc>=a+b細(xì)化355測試用例設(shè)計—舉例等價類測試?yán)唬喝切螁栴}(不考慮邊長限制)abc預(yù)期輸出555等邊三角形223等腰三角形232等腰三角形322等腰三角形345不等邊三角形412非三角形312非三角形142非三角形132非三角形142非三角形123非三角形弱一般等價類測試用例三角形輸入域非三角形等邊三角形等腰三角形不等邊三角形a>=b+cb>=a+cc>=a+b在每個等價類中取值時,應(yīng)取norm值36等價類測試捉蟲實踐3:第二日問題針對個體輸入域針對整體輸入域測試分析37等價類測試第一次測試嘗試等價劃分38等價類測試第一次測試嘗試無效等價類的測試用例39等價類測試第一次測試嘗試有效等價類的測試用例40等價類測試第二次測試嘗試等價劃分41等價類測試第二次測試嘗試有效等價類的測試用例42等價類測試第二次測試嘗試有效等價類的測試用例(續(xù))43等價類測試第二次測試嘗試獨立性假設(shè)導(dǎo)致的冗余44等價類測試針對整體輸入域45等價類測試針對整體輸入域46等價類測試針對輸出域的等價類測試選擇合適的輸出域來劃分等價類針對選定的輸出域劃分等價類根據(jù)劃分的等價類設(shè)計測試用例475測試用例設(shè)計—舉例等價類測試?yán)唬喝切螁栴}(不考慮邊長限制)輸出值域測試輸出的等價類R1={<a,b,c>|有三條邊a,b,c的等邊三角形}R2={<a,b,c>|有三條邊a,b,c的等腰三角形}R3={<a,b,c>|有三條邊a,b,c的不等邊三角形}R4={<a,b,c>|三條邊a,b,c不構(gòu)成三角形}abc預(yù)期輸出555等邊三角形223等腰三角形345不等邊三角形412非構(gòu)成三角形弱一般等價類測試用例48等價類測試捉蟲實踐4:傭金問題輸出域的選擇銷售額?傭金?等價劃分和測試用例設(shè)計49等價類測試等價劃分和測試用例設(shè)計505測試用例設(shè)計—舉例等價類測試?yán)唬喝切螁栴}(考慮邊長限制)abc預(yù)期輸出-155a取值無效5-15b取值無效55-1c取值無效20155a取值無效52015b取值無效55201c取值無效弱健壯等價類測試用例(補充)abc預(yù)期輸出-155a取值無效5-15b取值無效55-1c取值無效-1-15a,b取值無效5-1-1b,c取值無效-15-1a,c取值無效-1-1-1a,c,b取值無效強健壯等價類測試用例(補充)515測試用例設(shè)計—舉例等價類測試?yán)篘extDate輸入定義域測試輸入條件的有效等價類M1={月份|1<=月<=12}D1={日期|1<=日期<=31}Y1={年|1812<=年<=2012}M2={月份|月<1}M3={月份|月>12}D2={日期|日<1}D3={日期|日>31}Y2={年|年<1812}Y3={年|年>2012}測試用例總數(shù):(個)弱一般強一般弱健壯強健壯11727輸入條件的無效等價類525測試用例設(shè)計—舉例等價類測試?yán)篘extDatemonthdayyear預(yù)期輸出61519121912年6月16日弱一般/強一般等價類測試用例

abcdx2x1測試用例總數(shù):個1535測試用例設(shè)計—舉例等價類測試?yán)篘extDatemonthdayyear預(yù)期輸出61519121912年6月16日-1151912月份無效13151912月份無效6-11912日期無效6322012日期無效6151811年無效6152013年無效弱健壯等價類測試用例monthdayyear預(yù)期輸出-1151912月份無效6-11912日期無效6151811年無效-1-11912月份、日期無效6-11811日期、年無效-1151811月份、年無效-1-11811月份、日期和年無效強健壯等價類測試用例(部分)測試用例總數(shù):個7測試用例總數(shù):個27545測試用例設(shè)計—舉例等價類測試?yán)篘extDate輸入條件的有效等價類M1={月份|1<=月<=12}D1={日期|1<=日期<=31}Y1={年|1812<=年<=2012}輸入條件的等價類M1={月份|每月31天}M2={月份|每月30天}M3={月份|此月為2月}D1={日期|1<=日期<=28}D2={日期|日期=29}D3={日期|日期=30}D4={日期|日期=31}Y1={年|年=2000}Y2={年|年是閏年}Y3={年|年是平年}M1={月份|每月31天,12月除外}M4={月份|此月為12月}Y1={

溫馨提示

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

評論

0/150

提交評論