版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
測(cè)試用例八大設(shè)計(jì)方法和實(shí)例測(cè)試用例八大設(shè)計(jì)方法和實(shí)例測(cè)試用例八大設(shè)計(jì)方法和實(shí)例HYPERLINK""測(cè)試用例設(shè)計(jì)方法等價(jià)類劃分理論知識(shí)等價(jià)類劃分就就是一種典型得黑盒測(cè)試方法。這一方法完全不考慮程序得內(nèi)部結(jié)構(gòu),只依據(jù)程序得規(guī)格說(shuō)明來(lái)設(shè)計(jì)測(cè)試用例。等價(jià)類就就是指某個(gè)輸入域得子集合。在該子集合中,各個(gè)輸入數(shù)據(jù)對(duì)于揭示程序中得錯(cuò)誤都就就是等效得。等價(jià)類合理地假設(shè):某個(gè)等價(jià)類得代表值,與該等價(jià)類得其她值,對(duì)于測(cè)試來(lái)說(shuō)就就是等價(jià)得。因此,可以把全部得輸入數(shù)據(jù)劃分成若干得等價(jià)類,在每一個(gè)等價(jià)類中取一個(gè)數(shù)據(jù)來(lái)進(jìn)行測(cè)試。這樣就能以較少得具有代表性得數(shù)據(jù)進(jìn)行測(cè)試,而取得較好得測(cè)試效果。等價(jià)類劃分就就是把所有可能得輸入數(shù)據(jù),即程序得輸入域劃分成若干部分(子集),然后從每一個(gè)子集中選取少數(shù)具有代表性得數(shù)據(jù)作為測(cè)試用例、該方法就就是一種重要得,常用得黑盒測(cè)試用例設(shè)計(jì)方法、1)分類:劃分等價(jià)類:等價(jià)類就就是指某個(gè)輸入域得子集合、在該子集合中,各個(gè)輸入數(shù)據(jù)對(duì)于揭露程序中得錯(cuò)誤都就就是等效得、并合理地假定:測(cè)試某等價(jià)類得代表值就等于對(duì)這一類其她值得測(cè)試、因此,可以把全部輸入數(shù)據(jù)合理劃分為若干等價(jià)類,在每一個(gè)等價(jià)類中取一個(gè)數(shù)據(jù)作為測(cè)試得輸入條件,就可以用少量代表性得測(cè)試數(shù)據(jù)、取得較好得測(cè)試結(jié)果、等價(jià)類劃分可有兩種不同得情況:有效等價(jià)類和無(wú)效等價(jià)類、有效等價(jià)類:就就是指對(duì)于程序得規(guī)格說(shuō)明來(lái)說(shuō)就就是合理得,有意義得輸入數(shù)據(jù)構(gòu)成得集合、利用有效等價(jià)類可檢驗(yàn)程序就就是否實(shí)現(xiàn)了規(guī)格說(shuō)明中所規(guī)定得功能和性能、無(wú)效等價(jià)類:與有效等價(jià)類得定義恰巧相反、設(shè)計(jì)測(cè)試用例時(shí),要同時(shí)考慮這兩種等價(jià)類、因?yàn)?軟件不僅要能接收合理得數(shù)據(jù),也要能經(jīng)受意外得考驗(yàn)、這樣得測(cè)試才能確保軟件具有更高得可靠性、2)劃分等價(jià)類得方法:下面給出六條確定等價(jià)類得原則:①在輸入條件規(guī)定了取值范圍或值得個(gè)數(shù)得情況下,則可以確立一個(gè)有效等價(jià)類和兩個(gè)無(wú)效等價(jià)類、②在輸入條件規(guī)定了輸入值得集合或者規(guī)定了“必須如何”得條件得情況下,可確立一個(gè)有效等價(jià)類和一個(gè)無(wú)效等價(jià)類、③在輸入條件就就是一個(gè)布爾量得情況下,可確定一個(gè)有效等價(jià)類和一個(gè)無(wú)效等價(jià)類、④在規(guī)定了輸入數(shù)據(jù)得一組值(假定n個(gè)),并且程序要對(duì)每一個(gè)輸入值分別處理得情況下,可確立n個(gè)有效等價(jià)類和一個(gè)無(wú)效等價(jià)類、⑤在規(guī)定了輸入數(shù)據(jù)必須遵守得規(guī)則得情況下,可確立一個(gè)有效等價(jià)類(符合規(guī)則)和若干個(gè)無(wú)效等價(jià)類(從不同角度違反規(guī)則)、⑥在確知已劃分得等價(jià)類中各元素在程序處理中得方式不同得情況下,則應(yīng)再將該等價(jià)類進(jìn)一步得劃分為更小得等價(jià)類、3)原則:設(shè)計(jì)測(cè)試用例:在確立了等價(jià)類后,可建立等價(jià)類表,列出所有劃分出得等價(jià)類:輸入條件有效等價(jià)類無(wú)效等價(jià)類、、、、、、、、、
、、、、、、、、、然后從劃分出得等價(jià)類中按以下三個(gè)原則設(shè)計(jì)測(cè)試用例:為每一個(gè)等價(jià)類規(guī)定一個(gè)唯一得編號(hào)、設(shè)計(jì)一個(gè)新得測(cè)試用例,使其盡可能多地覆蓋尚未被覆蓋地有效等價(jià)類,重復(fù)這一步、直到所有得有效等價(jià)類都被覆蓋為止、設(shè)計(jì)一個(gè)新得測(cè)試用例,使其僅覆蓋一個(gè)尚未被覆蓋得無(wú)效等價(jià)類,重復(fù)這一步、直到所有得無(wú)效等價(jià)類都被覆蓋為止、之所以這么做,就就是因?yàn)槌绦蛑袑?duì)于某一個(gè)錯(cuò)誤輸入得檢查,往往會(huì)屏蔽對(duì)于其她錯(cuò)誤輸入得檢查。因此,必須針對(duì)每一個(gè)無(wú)效等價(jià)類分別設(shè)計(jì)測(cè)試用例實(shí)例1、保險(xiǎn)費(fèi)率計(jì)算PRIVATE年齡20~39歲6點(diǎn)40~59歲4點(diǎn)60歲以上20歲以下2點(diǎn)性別MALE5點(diǎn)FEMALE3點(diǎn)婚姻已婚3點(diǎn)未婚5點(diǎn)扶養(yǎng)人數(shù)一人扣0、5點(diǎn)最多扣3點(diǎn)(四舍五入取整數(shù))一、分析輸入數(shù)據(jù)型式。年齡:一或兩位數(shù)字。性別:以英文「Male」、Female」、「M」、「F」表示?;橐?「已婚」、「未婚」。扶養(yǎng)人數(shù):空白或一位數(shù)字。保險(xiǎn)費(fèi)率:10點(diǎn)以上,10點(diǎn)以下。二、劃分輸入數(shù)據(jù)PRIVATE1、年齡數(shù)字范圍1~99等價(jià)類20~39歲40~59歲60歲以上20歲以下2、性別類型英文字之集合等價(jià)類類型:英文字集合:「Male」、「M」集合:「Female」、「F」3、婚姻等價(jià)類已婚未婚4、扶養(yǎng)人數(shù)選擇項(xiàng)扶養(yǎng)人數(shù)可以有,也可沒(méi)有范圍1~9等價(jià)類空白1~6人6人以上5、保險(xiǎn)費(fèi)率等價(jià)類10點(diǎn)以上10點(diǎn)以下三、設(shè)計(jì)輸入數(shù)據(jù)。PRIVATE
有效等價(jià)類無(wú)效等價(jià)類無(wú)效等價(jià)類1、年齡20~39任選一個(gè)2、年齡40~59任選一個(gè)3、年齡60歲以上、20歲以下任選一個(gè)小於1,選一個(gè)大於99,選一個(gè)4、性別英文Male,M,F,Female任選一個(gè)非英文字如「男」5、性別英文Male,M任選一個(gè)非Male,M,Female,F之任意字元,如「Child」6、性別英文Female,F任選一個(gè)非Male,M,Female,F之任意字符,如「Child」7、婚姻「已婚」非「已婚」或「未婚」之任意字符,如「離婚」8、婚姻「未婚」非「已婚」或「未婚」之任意字符,如「離婚」9、扶養(yǎng)人數(shù)空白10、扶養(yǎng)人數(shù)1~6小於1,選一個(gè)11、扶養(yǎng)人數(shù)7~9大於9,選一個(gè)12、保險(xiǎn)費(fèi)率10點(diǎn)以上(0、6%)13、保險(xiǎn)費(fèi)率10點(diǎn)以下(0、6%)四、根據(jù)以上分析設(shè)計(jì)測(cè)試用例:PRIVATE用例編號(hào)年齡性別婚姻扶養(yǎng)人數(shù)保險(xiǎn)
費(fèi)率備注1、27Female未婚空白0、6%有效年齡:20~39歲性別:集合「Female,F」婚姻:集合「未婚」扶養(yǎng)人數(shù):空白保險(xiǎn)費(fèi)率:0、6%2、50Male已婚20、6%有效年齡:40~59歲性別:集合「Male,M」婚姻:集合「已婚」扶養(yǎng)人數(shù):1~6人3、70F未婚70、1%有效年齡:60歲以上或20歲以下性別:集合「Female,F」婚姻:集合「未婚」扶養(yǎng)人數(shù):6人以上4、0M已婚4無(wú)法推算年齡類無(wú)效,因此無(wú)法推算保險(xiǎn)費(fèi)率5、100Female未婚5無(wú)法推算年齡類無(wú)效,因此無(wú)法推算保險(xiǎn)費(fèi)率6、1男已婚6無(wú)法
推算性別類無(wú)效,因此無(wú)法推算保險(xiǎn)費(fèi)率7、99Child未婚1無(wú)法推算性別類無(wú)效,因此無(wú)法推算保險(xiǎn)費(fèi)率8、30Male離婚3無(wú)法
推算婚姻類無(wú)效,因此無(wú)法推算保險(xiǎn)費(fèi)率、9、75Female未婚0無(wú)法推算扶養(yǎng)人數(shù)類無(wú)效,因此無(wú)法推算保險(xiǎn)費(fèi)率10、17Male已婚10無(wú)法推算扶養(yǎng)人數(shù)類無(wú)效,因此無(wú)法推算保險(xiǎn)費(fèi)率邊界值分析法理論知識(shí)邊界值分析方法就就是對(duì)等價(jià)類劃分方法得補(bǔ)充,也就就是一種黑盒測(cè)試方法,適度等價(jià)類分析方法得一種補(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à)類得邊界,就就就是應(yīng)著重測(cè)試得邊界情況、應(yīng)當(dāng)選取正好等于,剛剛大于或剛剛小于邊界得值作為測(cè)試數(shù)據(jù),而不就就是選取等價(jià)類中得典型值或任意值作為測(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)部數(shù)據(jù)結(jié)構(gòu),則應(yīng)當(dāng)選擇這個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu)得邊界上得值作為測(cè)試用例、7)分析規(guī)格說(shuō)明,找出其她可能得邊界條件、實(shí)例找零錢(qián)最佳組合假設(shè)商店貨品價(jià)格(R)皆不大于100元(且為整數(shù)),若顧客付款在100元內(nèi)(P),求找給顧客之最少貨幣個(gè)(張)數(shù)?(貨幣面值50元(N50),10元(N10),5元(N5),1元(N1)四種)一、分析輸入得情形。R>1000<R<=100R<=0P>100R<=P<=100P<R二、分析輸出情形。N50=1N50=04>N10>=1N10=0N5=1N5=04>N1>=1N1=0三、分析規(guī)格中每一決策點(diǎn)之情形,以RR1,RR2,RR3表示計(jì)算要找50,10,5元貨幣數(shù)時(shí)之剩余金額。R>100R<=0
P>100
P<RRR1>=50RR2>=10RR3>=5四、由上述之輸入/輸出條件組合出可能得情形。R>100R<=00<R<=100,P>1000<R<=100,P<R
0<R<=100,R<=P<=100,RR=500<R<=100,R<=P<=100,RR=49
0<R<=100,R<=P<=100,RR=10
0<R<=100,R<=P<=100,RR=90<R<=100,R<=P<=100,RR=50<R<=100,R<=P<=100,RR=4
0<R<=100,R<=P<=100,RR=10<R<=100,R<=P<=100,RR=0五、為滿足以上之各種情形,測(cè)試資料設(shè)計(jì)如下:1、貨品價(jià)格=1012、貨品價(jià)格=03、貨品價(jià)格=-14、貨品價(jià)格=100,付款金額=1015、貨品價(jià)格=100,付款金額=996、貨品價(jià)格=50,付款金額=1007、貨品價(jià)格=51,付款金額=1008、貨品價(jià)格=90,付款金額=1009、貨品價(jià)格=91,付款金額=10010、貨品價(jià)格=95,付款金額=10011、貨品價(jià)格=96,付款金額=10012、貨品價(jià)格=99,付款金額=10013、貨品價(jià)格=100,付款金額=100錯(cuò)誤推測(cè)法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ò)誤得情況。可選擇這些情況下得例子作為測(cè)試用例。2)
例如,前面例子中成績(jī)報(bào)告得程序,采用錯(cuò)誤推測(cè)法還可補(bǔ)充設(shè)計(jì)一些測(cè)試用例:I、
II、
在回答記錄中混有標(biāo)準(zhǔn)答案記錄III、
除了標(biāo)題記錄外,還有一些得記錄最后一個(gè)字符即不就就是2也不就就是3IV、
有兩個(gè)學(xué)生得學(xué)號(hào)相同V、
試題數(shù)就就是負(fù)數(shù)。3)
再如,測(cè)試一個(gè)對(duì)線性表(比如數(shù)組)進(jìn)行排序得程序,可推測(cè)列出以下幾項(xiàng)需要特別測(cè)試得情況:I、
輸入得線性表為空表II、
表中只含有一個(gè)元素;III、
輸入表中所有元素已排好序;IV、
輸入表已按逆序排好;V、
輸入表中部分或全部元素相同。因果圖方法理論知識(shí)前面介紹得等價(jià)類劃分方法和邊界值分析方法,都就就是著重考慮輸入條件,但未考慮輸入條件之間得聯(lián)系,相互組合等、考慮輸入條件之間得相互組合,可能會(huì)產(chǎn)生一些新得情況、但要檢查輸入條件得組合不就就是一件容易得事情,即使把所有輸入條件劃分成等價(jià)類,她們之間得組合情況也相當(dāng)多、因此必須考慮采用一種適合于描述對(duì)于多種條件得組合,相應(yīng)產(chǎn)生多個(gè)動(dòng)作得形式來(lái)考慮設(shè)計(jì)測(cè)試用例、這就需要利用因果圖(邏輯模型)、因果圖方法最終生成得就就就是判定表、她適合于檢查程序輸入條件得各種組合情況、利用因果圖生成測(cè)試用例得基本步驟:(1)分析軟件規(guī)格說(shuō)明描述中,那些就就是原因(即輸入條件或輸入條件得等價(jià)類),那些就就是結(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)、為表明這些特殊情況,在因果圖上用一些記號(hào)表明約束或限制條件、(4)把因果圖轉(zhuǎn)換為判定表、(5)把判定表得每一列拿出來(lái)作為依據(jù),設(shè)計(jì)測(cè)試用例、從因果圖生成得測(cè)試用例(局部,組合關(guān)系下得)包括了所有輸入數(shù)據(jù)得取TRUE與取FALSE得情況,構(gòu)成得測(cè)試用例數(shù)目達(dá)到最少,且測(cè)試用例數(shù)目隨輸入數(shù)據(jù)數(shù)目得增加而線性地增加、前面因果圖方法中已經(jīng)用到了判定表、判定表(DecisionTable)就就是分析和表達(dá)多邏輯條件下執(zhí)行不同操作得情況下得工具、在程序設(shè)計(jì)發(fā)展得初期,判定表就已被當(dāng)作編寫(xiě)程序得輔助工具了、由于她可以把復(fù)雜得邏輯關(guān)系和多種條件組合得情況表達(dá)得既具體又明確、判定表通常由四個(gè)部分組成、條件樁(ConditionStub):列出了問(wèn)題得所有條件、通常認(rèn)為列出得條件得次序無(wú)關(guān)緊要、動(dòng)作樁(ActionStub):列出了問(wèn)題規(guī)定可能采取得操作、這些操作得排列順序沒(méi)有約束、條件項(xiàng)(ConditionEntry):列出針對(duì)她左列條件得取值、在所有可能情況下得真假值、動(dòng)作項(xiàng)(ActionEntry):列出在條件項(xiàng)得各種取值情況下應(yīng)該采取得動(dòng)作、規(guī)則:任何一個(gè)條件組合得特定取值及其相應(yīng)要執(zhí)行得操作、在判定表中貫穿條件項(xiàng)和動(dòng)作項(xiàng)得一列就就就是一條規(guī)則、顯然,判定表中列出多少組條件取值,也就有多少條規(guī)則,既條件項(xiàng)和動(dòng)作項(xiàng)有多少列、判定表得建立步驟:(根據(jù)軟件規(guī)格說(shuō)明)確定規(guī)則得個(gè)數(shù)、假如有n個(gè)條件、每個(gè)條件有兩個(gè)取值(0,1),故有種規(guī)則、列出所有得條件樁和動(dòng)作樁、③填入條件項(xiàng)、④填入動(dòng)作項(xiàng)、等到初始判定表、⑤簡(jiǎn)化、合并相似規(guī)則(相同動(dòng)作)、B、Beizer指出了適合使用判定表設(shè)計(jì)測(cè)試用例得條件:①規(guī)格說(shuō)明以判定表形式給出,或很容易轉(zhuǎn)換成判定表、②條件得排列順序不會(huì)也不影響執(zhí)行哪些操作、③規(guī)則得排列順序不會(huì)也不影響執(zhí)行哪些操作、④每當(dāng)某一規(guī)則得條件已經(jīng)滿足,并確定要執(zhí)行得操作后,不必檢驗(yàn)別得規(guī)則、⑤如果某一規(guī)則得到滿足要執(zhí)行多個(gè)操作,這些操作得執(zhí)行順序無(wú)關(guān)緊要、符號(hào)實(shí)例實(shí)例一某軟件規(guī)格說(shuō)明中包含這樣得要求:
第一列字符必須就就是A或B,第二列字符必須就就是一個(gè)數(shù)字,在此情況下進(jìn)行文件得修改。但如果第一列字符不正確,則給出信息L;如果第二列字符不就就是數(shù)字,則給出信息M。分開(kāi)原因和結(jié)果
原因:1----第一列字符就就是A;
2----第一列字符就就是B;3----第二列字符就就是一數(shù)字。結(jié)果:21----修改文件;22----給出信息L;23----給出信息M。實(shí)例二此例子就就是講解利用因果圖設(shè)計(jì)測(cè)試用例得一個(gè)小例子。以中國(guó)象棋中走馬得測(cè)試用例設(shè)計(jì)為例學(xué)習(xí)因果圖得使用方法。分析中國(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ì)方棋子;7如果不屬于1-4條,且落點(diǎn)處為對(duì)方老將,則移動(dòng)棋子,并提示戰(zhàn)勝對(duì)方,游戲結(jié)束。根據(jù)分析明確原因和結(jié)果原因:落點(diǎn)在棋盤(pán)上;落點(diǎn)與起點(diǎn)構(gòu)成日字;落點(diǎn)處為自己方棋子;落點(diǎn)方向得鄰近交叉點(diǎn)無(wú)棋子;落點(diǎn)處無(wú)棋子;落點(diǎn)處為對(duì)方棋子(非老將);落點(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)出得判定表考慮結(jié)果不能同時(shí)發(fā)生,所以對(duì)其施加唯一約束O。原因5、6、7不能同時(shí)發(fā)生,所以對(duì)其施加異約束E、根據(jù)因果圖建立判定表:(分為兩表)12345678910111213141516原因10101010101010101200110011001100113000011110000111140000000011111111結(jié)果110000000100000000211111111011111111用例123456789`0111213141516原因110101010101010101500110011001100116000011110000111170000000011111111結(jié)果220010000230000100240000001用例注:1、以上判定表中由于表格大小限制沒(méi)有列出最后所選得測(cè)試用例;2、第2表中部分列被合并表示不可能發(fā)生得現(xiàn)象;3、通過(guò)中間節(jié)點(diǎn)將用例得判定表簡(jiǎn)化為兩個(gè)小表。減少工作量。四、根據(jù)判定表寫(xiě)測(cè)試用例表(略)路徑覆蓋熟悉測(cè)試?yán)碚摰萌硕贾?路徑覆蓋就就是白盒測(cè)試中一種很重要得方法,廣泛應(yīng)用于單元測(cè)試。那么基于路徑覆蓋得分析方法就就是不就就是只能應(yīng)用于單元測(cè)試呢,能不能將其推而廣之呢。一般而言,在單元測(cè)試中,路徑就就就是指函數(shù)代碼得某個(gè)分支,而實(shí)際上如果我們將軟件系統(tǒng)得某個(gè)流程也看成路徑得話,我們將可以嘗試著用路徑分析得方法來(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)。完成所有流程得圖表化后就完成了所有路徑得設(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)選取:一就就是路徑使用得頻率,使用越頻繁得優(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ù)得輸入輸出對(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)啟示。功能圖功能圖方法就就是一種黑盒、白盒混合用例設(shè)計(jì)方法,就就是功能圖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è)試中得一系列狀態(tài)和在每個(gè)狀態(tài)中必須依靠輸入/輸出數(shù)據(jù)滿足得一對(duì)條件組成。(1)功能圖:功能圖由狀態(tài)遷移圖和布爾函數(shù)組成。狀態(tài)遷移圖用狀態(tài)和遷移來(lái)描述。一個(gè)狀態(tài)指出數(shù)據(jù)輸入得位置(或時(shí)間),而遷移則指明狀態(tài)得改變,同時(shí)要依靠判定表或就就是因果圖表示得邏輯功能。例如,一個(gè)簡(jiǎn)化得自動(dòng)出納ATM機(jī)得功能圖。
(2)測(cè)試用例生成方法:從功能圖生成測(cè)試用例,得到得測(cè)試用例數(shù)就就是可以接受得。問(wèn)題得關(guān)鍵就就是如何從狀態(tài)遷移圖中選取測(cè)試用例。若用節(jié)點(diǎn)代替狀態(tài),用弧線代替遷移,則狀態(tài)遷移圖就可轉(zhuǎn)化成一個(gè)程序得控制流程圖形式。問(wèn)題就轉(zhuǎn)化為程序得路徑測(cè)試問(wèn)題了。(3)測(cè)試用例生成規(guī)則:為了把狀態(tài)遷移得測(cè)試用例與邏輯模型得測(cè)試用例相組合起來(lái),從功能圖生成生成實(shí)用得測(cè)試用例,需定義下面得規(guī)則。在一個(gè)結(jié)構(gòu)化得遷移(SST)中,定義三種形式得循環(huán):順序、選擇和重復(fù)。但分辨一個(gè)狀態(tài)遷移中得所有循環(huán)就就是有困難得。
(4)從功能圖生成測(cè)試用例得過(guò)程。
A、生成局部測(cè)試用例:在每個(gè)狀態(tài)中,從因果圖生成局部測(cè)試用例。局部測(cè)試用例由原因值(輸入數(shù)據(jù))組合與對(duì)應(yīng)得結(jié)果值(輸出數(shù)據(jù)或狀態(tài))構(gòu)成。B、測(cè)試路徑生成:利用上面得規(guī)則(3種)生成從初始狀態(tài)到最后狀態(tài)得測(cè)試路徑。
C、測(cè)試用例合成:合成測(cè)試路徑與功能圖中每個(gè)狀態(tài)得局部測(cè)試用例。結(jié)果就就是初始狀態(tài)到最后狀態(tài)得一個(gè)狀態(tài)序列,以及每個(gè)狀態(tài)中輸入數(shù)據(jù)與對(duì)應(yīng)輸出數(shù)據(jù)得組合。D、測(cè)試用例得合成算法:采用合成構(gòu)造樹(shù)。正交試驗(yàn)設(shè)計(jì)法理論知識(shí)1、什么就就是因素(Factor在一項(xiàng)試驗(yàn)中,凡欲考察得變量稱為因素(變量)2、什么就就是水平(位級(jí)Level在試驗(yàn)范圍內(nèi),因素被考察得值稱為水平(變量得取值)3、什么就就是正交試驗(yàn)設(shè)計(jì)就就是研究多因素多水平得一種設(shè)計(jì)方法,她就就是根據(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ù)就就是完全相同得。由于在試驗(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è)測(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ù)(變量)剛好符合正交表。實(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è)水平姓名:填、不填身份證號(hào):填、不填手機(jī)號(hào)碼:填、不填3、選擇正交表表中得因素?cái)?shù)>=3表中至少有三個(gè)因素得水平數(shù)>=2行數(shù)取最少得一個(gè)結(jié)果:4、變量映射姓名:0、、、、填寫(xiě),1、、、、不填寫(xiě)身份證號(hào):0、、、、填寫(xiě),1、、、、不填寫(xiě)手機(jī)號(hào)碼:0、、、、填寫(xiě),1、、、、不填寫(xiě)5、用L4(23)設(shè)計(jì)得測(cè)試用例測(cè)試用例如下:1:填寫(xiě)姓名、填寫(xiě)身份證號(hào)、填寫(xiě)手機(jī)號(hào)2:填寫(xiě)姓名、不填身份證號(hào)、不填手機(jī)號(hào)3:不填姓名、填寫(xiě)身份證號(hào)、不填手機(jī)號(hào)4:不填姓名、不填身份證號(hào)、填寫(xiě)手機(jī)號(hào)增補(bǔ)測(cè)試用例5:不填姓名、不填身份證號(hào)、不填手機(jī)號(hào)測(cè)試用例減少數(shù):856、因素?cái)?shù)不相同水平數(shù)(變量得取值)相同但在正交表中找不到相同得因素?cái)?shù)(變量)(取因素?cái)?shù)(取因素?cái)?shù)最接近但略大得實(shí)際值得表)場(chǎng)景設(shè)計(jì)方法理論知識(shí):現(xiàn)在得軟件幾乎都就就是用事件觸發(fā)來(lái)控制流程得,事件觸發(fā)時(shí)得情景便形成了場(chǎng)景,而同一事件不同得觸發(fā)順序和處理結(jié)果就形成事件流。這種在軟件設(shè)計(jì)方面得思想也可以引入到軟件測(cè)試中,可以比較生動(dòng)地描繪出事件觸發(fā)時(shí)得情景,有利于測(cè)試設(shè)計(jì)者設(shè)計(jì)測(cè)試用例,同時(shí)使測(cè)試用例更容易理解和執(zhí)行?;玖骱蛡溥x流:如下圖所示,圖中經(jīng)過(guò)用例得每條路徑都用基本流和備選流來(lái)表示,直黑線表示基本流,就就是經(jīng)過(guò)用例得最簡(jiǎn)單得路徑。備選流用不同得色彩表示,一個(gè)備選流可能從基本流開(kāi)始,在某個(gè)特定條件下執(zhí)行,然后重新加入基本流中(如備選流1和3);也可能起源于另一個(gè)備選流(如備選流2),或者終止用例而不再重新加入到某個(gè)流(如備選流2和4)。實(shí)例1
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電力設(shè)施防塵網(wǎng)施工合同
- 汽車(chē)租賃供應(yīng)鏈管理協(xié)議
- 2025煤礦承包合同的
- 二零二五年度O2O電商平臺(tái)代運(yùn)營(yíng)效果評(píng)估及傭金支付合同3篇
- 醫(yī)藥行業(yè)合同銷(xiāo)售經(jīng)理招募
- 2025組裝電腦保修合同
- 建筑模板施工人工費(fèi)合同
- 油氣井新建爆破作業(yè)協(xié)議
- 2025養(yǎng)殖保險(xiǎn)合同范文樣本
- 2025照顧老人保姆合同
- 【市質(zhì)檢】泉州市2025屆高中畢業(yè)班質(zhì)量監(jiān)測(cè)(二) 語(yǔ)文試卷(含官方答案)
- 《小學(xué)教育中家校合作存在的問(wèn)題及完善對(duì)策研究》7200字(論文)
- 申請(qǐng)行政復(fù)議的申請(qǐng)書(shū)范文模板
- 藥品省區(qū)經(jīng)理管理培訓(xùn)
- DB32T 1589-2013 蘇式日光溫室(鋼骨架)通 用技術(shù)要求
- 一氧化碳安全培訓(xùn)
- 專項(xiàng)8 非連續(xù)性文本閱讀- 2022-2023學(xué)年五年級(jí)語(yǔ)文下冊(cè)期末專項(xiàng)練習(xí)
- 新班主任教師崗前培訓(xùn)
- 安徽省阜陽(yáng)市2022-2023學(xué)年高三上學(xué)期期末考試 數(shù)學(xué)試題 附答案
- 業(yè)務(wù)辦理授權(quán)委托書(shū)移動(dòng)手機(jī)號(hào)碼業(yè)務(wù)變更
- 人教版英語(yǔ)2024七年級(jí)上冊(cè)全冊(cè)單元測(cè)試卷
評(píng)論
0/150
提交評(píng)論