版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第三章黑盒測試問題1:三角形問題接收三個整數(shù)a,b,c作為輸入,用作三角形的邊,程序輸出由這三個邊確定的三角形的類型:等邊三角形、等腰三角形、不等邊三角形、非三角形。問題2:NextDate函數(shù)輸入三個變量(年、月、日),函數(shù)返回輸入日期后面的那個日期。1≤月份≤121≤日期≤311812≤年≤20123.1等價類劃分3.1.1等價類劃分原則等價類劃分的辦法是把程序的輸入域劃分成若干部分,然后從每個部分中選取少數(shù)代表性數(shù)據(jù)當(dāng)作測試用例。在分析需求規(guī)格說明的基礎(chǔ)上劃分等價類,列出等價類表。等價類是指某個輸入域的集合。如果用集合中的一個輸入條件作為測試數(shù)據(jù)進(jìn)行測試不能發(fā)現(xiàn)程序中的錯誤,那么使用集合中的其它輸入條件進(jìn)行測試也不可能發(fā)現(xiàn)錯誤。對揭露程序中的錯誤來說,集合中的每個輸入條件是等效的。
有效等價類:有效等價類指的是對程序的規(guī)格說明是有意義的、合理的輸入數(shù)據(jù)所構(gòu)成的集合。在具體問題中,有效等價類可以有一個,也可以是多個。無效等價類:無效等價類指對程序的規(guī)格說明是不合理的或無意義的輸入數(shù)據(jù)所構(gòu)成的集合。對于具體的問題,無效等價類至少應(yīng)有一個,也可能有多個。3.1.2確定等價類原則1.如果輸入條件規(guī)定了取值范圍或值的個數(shù),則可確定一個有效等價類和兩個無效等價類。輸入條件:…項數(shù)可以從1到999…有效等價類為“1≤
項數(shù)≤999”無效等價類為“項數(shù)<1”及“項數(shù)>999”值的個數(shù) “學(xué)生選課允許2門至4門” 有效等價類: 選課2至4門 無效等價類: 只選一門課或未選課 選課超過4門2.輸入條件規(guī)定了輸入值的集合,或是規(guī)定了“必須如何”的條件,則可確定一個有效等價類和一個無效等價類。例:“標(biāo)識符以字母開頭” 有效等價類: 以字母開頭的字符串 無效等價類: 以非字母開頭的字符串3.如果確知,已劃分的等價類中各元素在程序中的處理方式是不同的,則應(yīng)將此等價類進(jìn)一步劃小。3.1.3確定測試用例1.設(shè)計一個測試用例,使其盡可能多地覆蓋有效等價類,重復(fù)這一步,最終使得所有有效等價類均被覆蓋。2.設(shè)計一個測試用例,使其只覆蓋一個無效等價類,重復(fù)這一步,最終使得所有無效等價類均被覆蓋。有效等價類覆蓋有效等價類的測試用例:abc覆蓋等價類號碼345(1)--(7)445(1)--(7),(8)455(1)--(7),(9)545(1)--(7),(10)444(1)--(7),(11)無效等價類3.1.4弱一般等價類兩變量x1,x2的函數(shù)a?x1?d,區(qū)間[a,b),[b,c),[c,d]e?x2?g,區(qū)間[e,f),[f,g]弱一般等價類:使用一個測試用例中的每個等價類(區(qū)間)的一個變量實現(xiàn)(單缺陷假設(shè))。x1x2abegfcd三個測試用例使用每個等價類中的一個值強(qiáng)一般等價類基于多缺陷假設(shè),需要等價類笛卡爾積的每個元素對應(yīng)的測試用例a?x1?d,區(qū)間[a,b),[b,c),[c,d]e?x2?g,區(qū)間[e,f),[f,g]x1x2abegfcda?x1?d,區(qū)間[a,b),[b,c),[c,d]e?x2?g,區(qū)間[e,f),[f,g]覆蓋所有等價類對可能的輸入組合弱健壯等價類弱:基于單缺陷假設(shè)健壯:考慮無效值對有效輸入,使用每個有效等價類的一個值對無效輸入,測試用例將擁有一個無效值,并保持其余的值都是有效的。x1x2abegfcda?x1?d,區(qū)間[a,b),[b,c),[c,d]e?x2?g,區(qū)間[e,f),[f,g]強(qiáng)健壯等價類基于多缺陷假設(shè),從所有等價類的笛卡爾積的每一個元素中獲得測試用例。a?x1?d,區(qū)間[a,b),[b,c),[c,d]e?x2?g,區(qū)間[e,f),[f,g]x1x2abegfcda?x1?d,區(qū)間[a,b),[b,c),[c,d]e?x2?g,區(qū)間[e,f),[f,g]3.1.5舉例—三角形問題輸出等價類R1={<a,b,c>:有三條邊的等邊三角形}R2={<a,b,c>:有三條邊的等腰三角形}R3={<a,b,c>:有三條邊的不等邊三角形}R4={<a,b,c>:三條邊的不構(gòu)成三角形}弱一般等價類abc預(yù)期輸出1555等邊三角形2223等腰三角形3345不等邊三角形4412非三角形弱健壯等價類abc預(yù)期輸出1555等邊三角形2223等腰三角形3345不等邊三角形4412非三角形5-15565-15755-18201559520151055201NextDate問題三變量的有效區(qū)間M1={月份:1≤月份≤12}D1={日期:1≤日期≤31}Y1={年:1812≤年≤2012}無效等價類M2={月份:月份<1}M3={月份:月份>12}D2={日期:日期<
1}D3={日期:日期>31}Y2={年:年<
1812}Y3={年:年>
2012}弱一般等價類弱健壯測試用例月份日期年預(yù)期輸出161519121912.6.16月份日期年預(yù)期輸出161519121912.6.162-115191231315191246-119125632191266151811761520133.2邊界值測試3.2.1邊界值分析應(yīng)遵循的原則:(1)如果輸入條件規(guī)定了取值范圍,或規(guī)定了值的個數(shù),測試用例選擇:范圍的邊界內(nèi),最小值,稍高于最小值,正常值,稍低于最大值,最大值。例1:程序的規(guī)格說明:“重量在10~50公斤范圍內(nèi)的郵 件,其計算郵費(fèi)……”,測試用例選擇:10公斤, 10.01 公斤,25公斤,49.99公斤,50公斤例2:“某輸入文件可包含1~255個記錄,”測試用例:1,2,120,254,255;例:涉及兩個變量的函數(shù)x1,x2X1的取值:x1min,x1min+,x1nom,x1max-,x1maxX2的取值:x2min,x2min+,x2nom,x2max-,x2max關(guān)鍵假設(shè):“單缺陷”假設(shè):缺陷極少是由兩個或多個缺陷的同時發(fā)生引起的。<x1nom,x2min><x1nom,x2min+><x1nom,x2nom><x1nom,x2max-><x1nom,x2max><x1min,x2nom><x1min+,x2nom><x1nom,x2nom><x1max-,x2nom><x1max,x2nom>x1x2abcd對于n變量函數(shù),使除一個以外的所有變量取正常值,使剩余的那個變量取最小值、略高于最小值、正常值、略低于最大值、最大值,對每個變量都重復(fù)進(jìn)行。一個n變量函數(shù)的邊界值有:4n+1個測試用例?(2)針對規(guī)格說明的每個輸出條件使用(1)原則。(3)如果規(guī)格設(shè)計中提到的輸入輸出是個有序的集合(如順序文件表格等),就應(yīng)注意選取有序集中的第一個和最后一個元素作為測試用例。(4)分析規(guī)格說明,找出其它的可能邊界條件。邊界值分析的局限性N個變量相互獨(dú)立不考慮變量的語義3.2.2健壯性測試是邊界值分析的一種簡單擴(kuò)展,除了使用五個邊界值分析取值,還要通過采用一個略超過最大值的取值,以及一個略小于最小值的取值。一個n變量函數(shù)的健壯性測試用例有多少個?(基于“單缺陷”假設(shè))6n+1x1x2abcd3.2.3最壞情況測試對每一個變量,首先進(jìn)行包含最小值、略高于最小值、正常值、略低于最大值、最大值五個元素集合的測試,然后對這些集合進(jìn)行笛卡爾積計算,以生成測試用例。n變量函數(shù)的最壞情況測試會產(chǎn)生5n個測試用例?x1x2abcdX1的取值:x1min,x1min+,x1nom,x1max-,x1maxX2的取值:x2min,x2min+,x2nom,x2max-,x2max健壯最壞情況測試對每一個變量,首先進(jìn)行包含最小值、略高于最小值、正常值、略低于最大值、最大值五個元素集合的測試,還要采用一個略超過最大值的取值,以及一個略小于最小值的取值。然后對這些集合進(jìn)行笛卡爾積計算,以生成測試用例。n變量函數(shù)的健壯最壞情況測試會產(chǎn)生多少個測試用例?7nx1x2abcdX1的取值:x1min-,x1min,x1min+,x1nom,x1max- x1max,x1max+X2的取值:X2min-x2min,x2min+,x2nom,x2max- x2max,X2max+3.2.4特殊值測試使用領(lǐng)域知識、使用類似程序的經(jīng)驗開發(fā)測試用例的特殊值3.2.5舉例—三角形問題邊界值分析的測試用例abc預(yù)期結(jié)果110010012100100231001001004100100199510010020061001100710021008100100100910019910010100200100111100100122100100131001001001419910010015200100100最壞情況測試用例(5n)abc預(yù)期結(jié)果1111211231110041119951120061217122812100912199101220011110011211002131100100141100199151100200NextDate問題最壞情況的測試用例月份日期年預(yù)期結(jié)果111181221118133111912411201151120126121812712181381219129122011101220121111518121211518131311519121411520111511520123.2.6隨機(jī)測試使用隨機(jī)數(shù)生成器選出測試用例3.3判定表驅(qū)動測試三角形問題a,b,c構(gòu)成三角形NYYYYYYYYa=b?-YYYYNNNNa=c?-YYNNYYNNb=c?-YNYNYNYN非三角形X不等邊三角形X等腰三角形XXX等邊三角形X不可能XXX判定表驅(qū)動測試
在一些數(shù)據(jù)處理問題中,某些操作是否實施依賴于多個邏輯條件的取值。在這些邏輯條件取值的組合所構(gòu)成的多種情況下,分別執(zhí)行不同的操作。處理這類問題的一個非常有力的分析和表達(dá)工具是決策表,或判定表(DecisionTable)。
判定表的組成
條件樁(ConditionStub)動作樁(ActionStub)
條件項(ConditionEntity)動作項(ActionEntity)
規(guī)則(rule)
條件樁條件項
動作樁動作項
條件樁條件項
動作樁動作項
條件樁條件項
動作樁動作項規(guī)則規(guī)則及規(guī)則合并任何一個條件組合的特定取值及其相應(yīng)要執(zhí)行的操作稱為規(guī)則。在判定表中貫穿條件項和動作項的一列就是一條規(guī)則。顯然,判定表中列出多少組條件取值,也就有多少條規(guī)則,即條件項和動作項有多少列?;喚褪且?guī)則合并
有兩條或多條規(guī)則具有相同的動作,并且其條件項之間存在著極為相似的關(guān)系
YYNNYNXXYN-XYY-NNNXXY-NX
兩條規(guī)則合并成一條兩條規(guī)則的進(jìn)一步合并
例問題要求:”……對功率大于50馬力的機(jī)器、維修記錄不全或已運(yùn)行10年以上的機(jī)器,應(yīng)給予優(yōu)先的維修處理……”假定,“維修記錄不全”和“優(yōu)先維修處理”均已在別處有更嚴(yán)格的定義按5步建立判定表建立判定表的步驟①確定規(guī)則的個數(shù)。這里有3個條件,每個條件有兩個取值,故應(yīng)有2*2*2=8種規(guī)則。②列出所有的條件茬和動作茬。
③填入條件項。建立判定表的步驟④填入動作茬和動作頂。這樣便得到形如圖的初始判定表。
1
2
3
4
5
6
7
8
功率大于50馬力嗎?
Y
Y
Y
Y
N
N
N
N
維修記錄不全嗎?
Y
Y
N
N
Y
Y
N
N
條
件
運(yùn)行超過10年嗎?
Y
N
Y
N
Y
N
Y
N
進(jìn)行優(yōu)先處理
x
x
X
X
X
動
作
作其他處理
X
x
x
初始判定表
建立判定表的步驟⑤化簡。合并相似規(guī)則后得到圖。
1
2
3
4
5
功率大于50馬力嗎?
Y
Y
Y
N
N
維修記錄不全嗎?
Y
N
N
-
-
條
件
運(yùn)行超過10年嗎?
-
Y
N
Y
N
進(jìn)行優(yōu)先處理
x
x
X
動
作
作其他處理
x
x
化簡后的判定表
判定表在功能測試中的應(yīng)用
一軟件規(guī)格說明(1)當(dāng)條件1和條件2滿足,并且條件3和條件4不滿足,或者當(dāng)條件1、3和條件4滿足時,要執(zhí)行操作1。(2)在任一個條件都不滿足時,要執(zhí)行操作2。(3)在條件1不滿足,而條件4被滿足時,要執(zhí)行操作3。
規(guī)則只給出了16種規(guī)則中的8種
根據(jù)規(guī)格說明得到的判定表默許的規(guī)則
規(guī)則1
規(guī)則2
規(guī)則3規(guī)則4條件1
Y
Y
N
N
條件2
Y
-
N
-
條件3
N
Y
N
-
條件4
N
Y
N
Y
操作1
x
x
操作2
x
操作3
x
判定表的優(yōu)點(diǎn)和缺點(diǎn)優(yōu)點(diǎn):
它能把復(fù)雜的問題按各種可能的情況一一列舉出來,簡明而易于理解,也可避免遺漏。缺點(diǎn):
不能表達(dá)重復(fù)執(zhí)行的動作,例如循環(huán)結(jié)構(gòu)。
使用判定表設(shè)計測試用例的Beizer條件①規(guī)格說明以判定表形式給出,或是很容易轉(zhuǎn)換成判定表。②條件的排列順序不會也不應(yīng)影響執(zhí)行哪些操作。③規(guī)則的排列順序不會也不應(yīng)影響執(zhí)行哪些操作。④每當(dāng)某一規(guī)則的條件已經(jīng)滿足,并確定要執(zhí)行的操作后,不必檢驗別的規(guī)則。⑤如果某一規(guī)則得到滿足要執(zhí)行多個操作,這些操作的執(zhí)行順序無關(guān)緊要。
3.4因果圖分析因果圖
因果圖方法(Cause一EffectGraphics):一種黑盒測試方法方法的依據(jù):需求規(guī)格說明中的因果關(guān)系能夠幫助我們按一定步驟,高效率地選擇測試用例,同時還指出,程序規(guī)格說明描述中存在著的問題。
恒等c1=1e1=1c1=0e1=0非c1c2c3c1e1c1e1e1∨c1c2e1∧c1=1e1=0c1=0e1=1c1=1或c2=1或c3=1e1=1e1=0否則c1=1且c2=1e1=1e1=0否則或與因果圖介紹abEacIbabOE約束(異):a,b中至多有一個可能為1即a和b不能同時為1I約束(或):a,b和c中至少有一個
必須是1,即a、b和c不能同時為0O約束(唯一):a和b中必須有一個
且僅有一個為1輸入條件的約束abRR約束(要求):a是1時,b必須是1
即不可能a是1時b為0abMM約束(強(qiáng)制):若結(jié)果a是1時,
則結(jié)果b強(qiáng)制為0輸出條件的約束步驟
①分析程序規(guī)格說明的描述中,哪些是原因,哪些是結(jié)果。原因常常是輸入條件或是輸入條件的等價類。而結(jié)果是輸出條件。②分析程序規(guī)格說明的描述中語義的內(nèi)容,并將其表示成連接各個原因與各個結(jié)果的“因果圖”。步驟③由于語法或環(huán)境的限制,有些原因和結(jié)果的組合情況是不可能出現(xiàn)的。為表明這些特定的情況,在因果圖上使用若干個特殊的符號標(biāo)明約束條件。④把因果圖轉(zhuǎn)換成判定表。⑤把判定表中每一列表示的情況寫成測試用例。例1軟件規(guī)格說明書“第一列字符必須是A或B,第二列字符必須是一個數(shù)字,在此情況下進(jìn)行文件的修改。但如果第一列字符不正確,則給出信息L,如果第二列字符不是數(shù)字,則給出信息M?!痹蚝徒Y(jié)果原因:
1——第一列字符是A;
2——第一列字符是B;
3——第二列字符是一數(shù)字。結(jié)果:
21——修改文件;
22——給出信息L;
23——給出信息M。因果圖和具有約束的因果圖11為中間節(jié)點(diǎn);考慮到原因1和原因2不可能同時為1,因此在因果圖上施加E約束。12322212311E判定表
根據(jù)因果圖建立如下的判定表
表中8種情況的左面兩列情況中
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國戶外運(yùn)動光學(xué)產(chǎn)品行業(yè)并購重組擴(kuò)張戰(zhàn)略制定與實施研究報告
- 2025-2030年中國智能卡芯片行業(yè)全國市場開拓戰(zhàn)略制定與實施研究報告
- 新形勢下風(fēng)機(jī)塔架行業(yè)可持續(xù)發(fā)展戰(zhàn)略制定與實施研究報告
- 2025-2030年中國產(chǎn)業(yè)園區(qū)物業(yè)管理行業(yè)營銷創(chuàng)新戰(zhàn)略制定與實施研究報告
- 建設(shè)書香校園活動方案
- 校園西裝調(diào)查問卷
- 建設(shè)功臣事跡材料
- 2025年教育學(xué)試題答案
- 食品保鮮膜知識培訓(xùn)課件
- 西藏林芝市2023-2024學(xué)年九年級上學(xué)期期末考試化學(xué)試題
- 專項債券培訓(xùn)課件
- CNAS-CL01-G001:2024檢測和校準(zhǔn)實驗室能力認(rèn)可準(zhǔn)則的應(yīng)用要求
- 校園重點(diǎn)防火部位消防安全管理規(guī)定(3篇)
- 臨時施工圍擋安全應(yīng)急預(yù)案
- 2024城市河湖底泥污染狀況調(diào)查評價技術(shù)導(dǎo)則
- MT-T 1199-2023 煤礦用防爆柴油機(jī)無軌膠輪運(yùn)輸車輛通用安全技術(shù)條件
- 軸聯(lián)軸器離合器解析課件
- 一年級上學(xué)期語文期末試卷分析一年級上冊語文試卷
- C4支持學(xué)生創(chuàng)造性學(xué)習(xí)與表達(dá)作業(yè)1-設(shè)計方案
- Q∕SY 01330-2020 井下作業(yè)現(xiàn)場監(jiān)督規(guī)范
- 醫(yī)院關(guān)于不合理醫(yī)療檢查專項治理自查自查自糾總結(jié)
評論
0/150
提交評論