軟件工程黑盒測(cè)試_第1頁
軟件工程黑盒測(cè)試_第2頁
軟件工程黑盒測(cè)試_第3頁
軟件工程黑盒測(cè)試_第4頁
軟件工程黑盒測(cè)試_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、5.45.4黑盒測(cè)試的測(cè)試用例設(shè)計(jì)黑盒測(cè)試的測(cè)試用例設(shè)計(jì) 5.4.1 5.4.1 等價(jià)類劃分法等價(jià)類劃分法(等價(jià)分配)(等價(jià)分配) 把所有可能的輸入數(shù)據(jù)把所有可能的輸入數(shù)據(jù)( (有效的和無效有效的和無效的的) )劃分成若干個(gè)等價(jià)的子集劃分成若干個(gè)等價(jià)的子集( (稱為等價(jià)類稱為等價(jià)類別或等價(jià)區(qū)間別或等價(jià)區(qū)間) ),使得每個(gè)子集中的一個(gè)典,使得每個(gè)子集中的一個(gè)典型值在測(cè)試中的作用與這一子集中所有其型值在測(cè)試中的作用與這一子集中所有其它值的作用相同它值的作用相同. . 可從每個(gè)子集中選取一組數(shù)據(jù)來測(cè)試程序可從每個(gè)子集中選取一組數(shù)據(jù)來測(cè)試程序例例: :某報(bào)表處理系統(tǒng)要求用戶某報(bào)表處理系統(tǒng)要求用戶輸入輸

2、入處理報(bào)表處理報(bào)表 的的日期日期,日期限制在,日期限制在20032003年年1 1月至月至20082008年年 1212月,即系統(tǒng)只能對(duì)該段期間內(nèi)的報(bào)表月,即系統(tǒng)只能對(duì)該段期間內(nèi)的報(bào)表 進(jìn)行處理,如日期不在此范圍內(nèi),則顯進(jìn)行處理,如日期不在此范圍內(nèi),則顯 示輸入錯(cuò)誤信息。示輸入錯(cuò)誤信息。 系統(tǒng)日期規(guī)定由年、月的系統(tǒng)日期規(guī)定由年、月的6 6位數(shù)字字符組位數(shù)字字符組 成,前四位代表年,后兩位代表月。成,前四位代表年,后兩位代表月。 如何用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例如何用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例, , 來測(cè)試程序的日期檢查功能?來測(cè)試程序的日期檢查功能?如何劃分等價(jià)類?如何劃分等價(jià)類?有效等價(jià)類有效等

3、價(jià)類( (合理等價(jià)類合理等價(jià)類) )無效等價(jià)類無效等價(jià)類( (不合理等價(jià)類不合理等價(jià)類) ) 劃分等價(jià)類的標(biāo)準(zhǔn):劃分等價(jià)類的標(biāo)準(zhǔn):覆蓋覆蓋不相交不相交代表性代表性劃分等價(jià)類的規(guī)則劃分等價(jià)類的規(guī)則 (1)(1)如果輸入條件規(guī)定了取值范圍,可定義一個(gè)有如果輸入條件規(guī)定了取值范圍,可定義一個(gè)有 效等價(jià)類和兩個(gè)無效等價(jià)類。效等價(jià)類和兩個(gè)無效等價(jià)類。例例 輸入值是學(xué)生成績,范圍是輸入值是學(xué)生成績,范圍是0 01001000 1000 100 有效等價(jià)類有效等價(jià)類00成績成績100100無效等價(jià)類無效等價(jià)類 成績成績100100 無效等價(jià)類無效等價(jià)類 成績成績00(2)(2)如果輸入條件代表集合的某個(gè)元素

4、,則可定義如果輸入條件代表集合的某個(gè)元素,則可定義 一個(gè)有效等價(jià)類和一個(gè)無效等價(jià)類。一個(gè)有效等價(jià)類和一個(gè)無效等價(jià)類。劃分等價(jià)類的規(guī)則:劃分等價(jià)類的規(guī)則:(3)(3)如規(guī)定了輸入數(shù)據(jù)的一組值,且程序?qū)Σ煌斎缫?guī)定了輸入數(shù)據(jù)的一組值,且程序?qū)Σ煌?入值做不同處理,則每個(gè)允許的輸入值是一個(gè)入值做不同處理,則每個(gè)允許的輸入值是一個(gè) 有效等價(jià)類,并有一個(gè)無效等價(jià)類有效等價(jià)類,并有一個(gè)無效等價(jià)類( (所有不允所有不允 許的輸入值的集合許的輸入值的集合) )。例:輸入條件說明學(xué)歷可為例:輸入條件說明學(xué)歷可為: :???、本科、碩士、博士???、本科、碩士、博士四四 種之一,則分別取這四個(gè)值作為種之一,則分別取

5、這四個(gè)值作為四個(gè)有效等價(jià)類四個(gè)有效等價(jià)類, 另外把四種學(xué)歷之外的任何學(xué)歷作為無效等價(jià)類另外把四種學(xué)歷之外的任何學(xué)歷作為無效等價(jià)類(4)(4)如果規(guī)定了輸入數(shù)據(jù)必須遵循的規(guī)則,可確定如果規(guī)定了輸入數(shù)據(jù)必須遵循的規(guī)則,可確定 一個(gè)有效等價(jià)類(符合規(guī)則)和若干個(gè)無效等一個(gè)有效等價(jià)類(符合規(guī)則)和若干個(gè)無效等 價(jià)類(從不同角度違反規(guī)則價(jià)類(從不同角度違反規(guī)則) )。(5)(5)如已劃分的等價(jià)類各元素在程序中的處理方式如已劃分的等價(jià)類各元素在程序中的處理方式 不同,則應(yīng)將此等價(jià)類進(jìn)一步劃分成更小的等不同,則應(yīng)將此等價(jià)類進(jìn)一步劃分成更小的等 價(jià)類。價(jià)類。用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例步驟:用等價(jià)類劃分法設(shè)計(jì)測(cè)

6、試用例步驟:(1)(1)形成形成等價(jià)類表等價(jià)類表,每一等價(jià)類規(guī)定一個(gè),每一等價(jià)類規(guī)定一個(gè) 唯一的唯一的編號(hào)編號(hào);(2)(2)設(shè)計(jì)一設(shè)計(jì)一測(cè)試用例測(cè)試用例,使其盡可能多地覆,使其盡可能多地覆 蓋尚未蓋尚未覆蓋覆蓋的的有效等價(jià)類有效等價(jià)類,重復(fù)這一,重復(fù)這一 步驟,直到所有有效等價(jià)類均被測(cè)試步驟,直到所有有效等價(jià)類均被測(cè)試 用例所覆蓋;用例所覆蓋;(3)(3)設(shè)計(jì)一新設(shè)計(jì)一新測(cè)試用例測(cè)試用例,使其只,使其只覆蓋覆蓋一個(gè)一個(gè) 無效等價(jià)類無效等價(jià)類,重復(fù)這一步驟直到所有,重復(fù)這一步驟直到所有 無效等價(jià)類均被覆蓋;無效等價(jià)類均被覆蓋;第一步:等價(jià)類劃分第一步:等價(jià)類劃分輸入條件輸入條件 有效等價(jià)類有效等

7、價(jià)類 無效等價(jià)類無效等價(jià)類 報(bào)表日期的報(bào)表日期的類型及長度類型及長度6 6位數(shù)字字符位數(shù)字字符(1)(1)有非數(shù)字字符有非數(shù)字字符 (4)(4)少于少于6 6個(gè)數(shù)字字符個(gè)數(shù)字字符 (5)(5)多于多于6 6個(gè)數(shù)字字符個(gè)數(shù)字字符 (6)(6)年份范圍年份范圍在在2003200320082008之間之間 (2)(2)小于小于2003 2003 (7)(7)大于大于2008 2008 (8)(8)月份范圍月份范圍在在1 11212之間之間(3)(3)“報(bào)表日期報(bào)表日期”輸入條件的等價(jià)類表輸入條件的等價(jià)類表小于小于1 1 (9)(9)大于大于12 12 (10)(10)第二步:為有效等價(jià)類設(shè)計(jì)測(cè)試用例

8、 測(cè)試數(shù)據(jù) 期望結(jié)果 覆蓋范圍200306200306等價(jià)類等價(jià)類(1)(2)(3)(1)(2)(3)輸入有效輸入有效對(duì)表中編號(hào)為對(duì)表中編號(hào)為1,2,31,2,3的的3 3個(gè)有效等價(jià)類用一個(gè)測(cè)個(gè)有效等價(jià)類用一個(gè)測(cè)試用例覆蓋:試用例覆蓋:(1)(1)6 6位數(shù)字字符位數(shù)字字符(2)(2)年在年在2003200320082008之間之間 (3)(3)月在月在1 11212之間之間第三步:為每一個(gè)無效等價(jià)類設(shè)至少 設(shè)計(jì)一個(gè)測(cè)試用例 測(cè)試數(shù)據(jù) 期望結(jié)果 覆蓋范圍003003maymay等價(jià)類等價(jià)類(4)(4)輸入無效輸入無效2003520035等價(jià)類等價(jià)類(5)(5)輸入無效輸入無效200300520

9、03005等價(jià)類等價(jià)類(6)(6)輸入無效輸入無效200120010505等價(jià)類等價(jià)類(7)(7)輸入無效輸入無效200920090505等價(jià)類等價(jià)類(8)(8)輸入無效輸入無效200320030000等價(jià)類等價(jià)類(9)(9)輸入無效輸入無效200320031313等價(jià)類等價(jià)類(10)(10)輸入無效輸入無效不能出現(xiàn)相同不能出現(xiàn)相同的測(cè)試用例的測(cè)試用例本例的本例的1010個(gè)等價(jià)類至個(gè)等價(jià)類至少需要少需要8 8個(gè)測(cè)試用例個(gè)測(cè)試用例例例: :對(duì)招干考試系統(tǒng)對(duì)招干考試系統(tǒng)“輸入學(xué)生成績輸入學(xué)生成績”子模塊子模塊 設(shè)計(jì)測(cè)試錄入準(zhǔn)考證號(hào)的測(cè)試用例設(shè)計(jì)測(cè)試錄入準(zhǔn)考證號(hào)的測(cè)試用例準(zhǔn)考證號(hào)數(shù)據(jù)格式定義:共準(zhǔn)考

10、證號(hào)數(shù)據(jù)格式定義:共6 6為數(shù)字組成,其中為數(shù)字組成,其中第一位為專業(yè)代號(hào)第一位為專業(yè)代號(hào): :1 1- -行政專業(yè)行政專業(yè), ,2 2- -法律專業(yè),法律專業(yè),3 3- -財(cái)經(jīng)專業(yè)財(cái)經(jīng)專業(yè)后后5 5位為考生順序號(hào),編碼范圍為:位為考生順序號(hào),編碼范圍為: 行政專業(yè)準(zhǔn)考證號(hào)碼為行政專業(yè)準(zhǔn)考證號(hào)碼為: :1 110001100011 11121511215 法律專業(yè)準(zhǔn)考證號(hào)碼為法律專業(yè)準(zhǔn)考證號(hào)碼為: :2 210001100012 21200612006 財(cái)經(jīng)專業(yè)準(zhǔn)考證號(hào)碼為財(cái)經(jīng)專業(yè)準(zhǔn)考證號(hào)碼為: :3 310001100013 31401514015 準(zhǔn)考證號(hào)碼的等價(jià)類劃分準(zhǔn)考證號(hào)碼的等價(jià)類劃

11、分 有效等價(jià)類有效等價(jià)類: : (1) 110001 (1) 110001 111215111215 (2) 210001 (2) 210001 212006212006 (3) 310001 (3) 310001 314015314015 無效等價(jià)類無效等價(jià)類: : (4) - (4) - 110000110000 (5) 111216 (5) 111216 210000210000 (6) 212007 (6) 212007 3100031000 (7) 314016 (7) 314016 + + 5.4.2 5.4.2 邊界值分析法邊界值分析法邊界值分析法與等價(jià)類劃分法區(qū)別邊界值分析法與

12、等價(jià)類劃分法區(qū)別(1)(1)邊界值分析不是從某等價(jià)類中邊界值分析不是從某等價(jià)類中 隨便挑一個(gè)作為代表,而是使隨便挑一個(gè)作為代表,而是使 這個(gè)等價(jià)類的每個(gè)邊界都要作這個(gè)等價(jià)類的每個(gè)邊界都要作 為測(cè)試條件。為測(cè)試條件。(2)(2)邊界值分析不僅考慮輸入條件,邊界值分析不僅考慮輸入條件, 還要考慮輸出空間產(chǎn)生的測(cè)試還要考慮輸出空間產(chǎn)生的測(cè)試 情況情況被測(cè)試被測(cè)試子子 域域測(cè)試內(nèi)點(diǎn)測(cè)試內(nèi)點(diǎn)測(cè)試外點(diǎn)測(cè)試外點(diǎn) 如果在懸崖峭壁邊如果在懸崖峭壁邊可以自信地安全行走,可以自信地安全行走,平地就不在話下。平地就不在話下。 如果軟件在能力達(dá)如果軟件在能力達(dá)到極限時(shí)能夠運(yùn)行,那到極限時(shí)能夠運(yùn)行,那么在正常情況下就不會(huì)

13、么在正常情況下就不會(huì)出什么問題出什么問題。軟件邊界與懸崖很類似輸入輸入條件條件報(bào)表日?qǐng)?bào)表日期的類期的類型及長型及長度度1 1個(gè)數(shù)字字符個(gè)數(shù)字字符5 5個(gè)數(shù)字字符個(gè)數(shù)字字符7 7個(gè)數(shù)字字符個(gè)數(shù)字字符有有1 1個(gè)非數(shù)字字符個(gè)非數(shù)字字符全部是非數(shù)字字符全部是非數(shù)字字符6 6個(gè)數(shù)字字符個(gè)數(shù)字字符顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)輸入有效輸入有效日期日期范圍范圍月份月份范圍范圍“報(bào)表日期報(bào)表日期”邊界值分析法測(cè)試用邊界值分析法測(cè)試用例例測(cè)試用例說明測(cè)試用例說明測(cè)試數(shù)據(jù)測(cè)試數(shù)據(jù) 期望結(jié)果期望結(jié)果選取理由選取理由5 52003520035200300520030

14、052003.52003.5may-may-200305200305月份為月份為1 1月月月份為月份為1212月月月份月份11212200301200301200312200312200300200300200313200313200301200301200812200812200300200300200813200813輸入有效輸入有效輸入有效輸入有效顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)輸入有效輸入有效輸入有效輸入有效顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)顯示出錯(cuò)在有效范圍在有效范圍邊界上選取邊界上選取數(shù)據(jù)數(shù)據(jù)僅有僅有1 1個(gè)合法字符個(gè)合法字符比有效長度少比有效長度少1 1比有效長度多比有效長度多1 1只有只

15、有1 1個(gè)非法字符個(gè)非法字符6 6個(gè)非法字符個(gè)非法字符類型及長度均有效類型及長度均有效最小日期最小日期最大日期最大日期剛好小于最小日期剛好小于最小日期剛好大于最大日期剛好大于最大日期最小月份最小月份最大月份最大月份剛好小于最小月份剛好小于最小月份剛好大于最大月份剛好大于最大月份有效等價(jià)類和用來測(cè)試有效等價(jià)類和用來測(cè)試getnumdaysinmonth()getnumdaysinmonth()方法所選的有效輸入方法所選的有效輸入 有效有效等價(jià)類一個(gè)月有一個(gè)月有3131天天, ,非閏年非閏年190119017(7(七月七月) )一個(gè)月有一個(gè)月有3131天天, , 閏年閏年190419047(7(七

16、月七月) )一個(gè)月有一個(gè)月有3030天天, ,非閏年非閏年190119016(6(六月六月) )一個(gè)月有一個(gè)月有3030天天, , 閏年閏年190419046(6(六月六月) )一個(gè)月為一個(gè)月為2828或或2929天天, ,非閏年非閏年190119012(2(二月二月) )月份輸入值年份輸入值一個(gè)月為一個(gè)月為2828或或2929天天, , 閏年閏年2(2(二月二月) )19041904用來測(cè)試用來測(cè)試getnumdaysinmonth()getnumdaysinmonth()方法的附加邊界值方法的附加邊界值 等價(jià)類可以被可以被400400整除的閏年整除的閏年200020002(2(二月二月)

17、)可以被可以被100100整除的非閏年整除的非閏年190019002(2(二月二月) )非正數(shù)無效月份非正數(shù)無效月份129112910 0正數(shù)無效月份正數(shù)無效月份131513151313月份輸入值年份輸入值5.4.3 5.4.3 錯(cuò)誤推測(cè)法錯(cuò)誤推測(cè)法(error guessing)根據(jù)經(jīng)驗(yàn)、直覺和預(yù)感來進(jìn)行測(cè)試根據(jù)經(jīng)驗(yàn)、直覺和預(yù)感來進(jìn)行測(cè)試?yán)纾豪纾阂欢ㄒ紤]建立處理下列等價(jià)類一定要考慮建立處理下列等價(jià)類: :缺省值缺省值空白空白空值空值零值零值無輸入條件無輸入條件在已經(jīng)找到軟件缺陷的地方再找找在已經(jīng)找到軟件缺陷的地方再找找 5.4.4 5.4.4 因果圖法因果圖法 因果圖適合于描述對(duì)于多種

18、輸入條件因果圖適合于描述對(duì)于多種輸入條件的組合,相應(yīng)產(chǎn)生多個(gè)動(dòng)作的形式來設(shè)計(jì)的組合,相應(yīng)產(chǎn)生多個(gè)動(dòng)作的形式來設(shè)計(jì)測(cè)試用例。測(cè)試用例。 因果圖方法最終生成的是因果圖方法最終生成的是判定表判定表。因果圖方法實(shí)例某電力公司有某電力公司有a a、b b、c c、d d四類收費(fèi)標(biāo)準(zhǔn)四類收費(fèi)標(biāo)準(zhǔn), ,并規(guī)定:并規(guī)定:居民用電居民用電 100100度度/ /月月 按按a a類收費(fèi)類收費(fèi) 100100度度/ /月按月按b b類收費(fèi)類收費(fèi)動(dòng)力用電動(dòng)力用電 1000010000度度/ /月月, ,非高峰非高峰,b,b類收費(fèi)類收費(fèi) 1000010000度度/ /月月, ,非高峰非高峰,c,c類收費(fèi)類收費(fèi) 10000

19、10000度度/ /月月, , 高峰高峰,c,c類收費(fèi)類收費(fèi) 1000010000度度/ /月月, , 高峰高峰,d,d類收費(fèi)類收費(fèi) 用因果圖表明輸入和輸出間的邏輯關(guān)系用因果圖表明輸入和輸出間的邏輯關(guān)系1 1i i1 12 2a ab bc c4 43 35 5d di i4 4i i3 3i i2 2因因果果把因果圖轉(zhuǎn)換為判定表把因果圖轉(zhuǎn)換為判定表組合條件組合條件條件條件( (原因原因) ) 動(dòng)作動(dòng)作( (結(jié)果結(jié)果) )a ab bc c1 12 23 31 12 23 34 45 56 61 10 01 11 10 00 00 01 11 10 00 00 01 11 10 00 00 0

20、0 01 10 00 00 00 01 11 10 04 41 10 01 10 05 50 00 01 11 1d d0 00 00 01 11 10 00 01 10 00 00 00 0測(cè)試用例測(cè)試用例為判定表每一列設(shè)計(jì)一個(gè)測(cè)試用例為判定表每一列設(shè)計(jì)一個(gè)測(cè)試用例: :1 1列列 居民電居民電,90,90度度/ /月月 a a2 2列列 居民電居民電,110,110度度/ /月月 b b3 3列列 動(dòng)力電動(dòng)力電, ,非高峰非高峰,8000,8000度度/ /月月 b b4 4列列 動(dòng)力電動(dòng)力電, ,非高峰非高峰,1.2,1.2萬度萬度/ /月月 c c5 5列列 動(dòng)力電動(dòng)力電, , 高峰高

21、峰,0.9,0.9萬度萬度/ /月月 c c6 6列列 動(dòng)力電動(dòng)力電, , 高峰高峰,1.1,1.1萬度萬度/ /月月 d d 條件條件 測(cè)試用例測(cè)試用例 預(yù)期結(jié)果預(yù)期結(jié)果組合組合 ( (輸入數(shù)據(jù)輸入數(shù)據(jù)) () (輸出動(dòng)作輸出動(dòng)作) )5.4.55.4.5 狀態(tài)測(cè)試狀態(tài)測(cè)試 軟件必須測(cè)試程序的狀態(tài)及其轉(zhuǎn)換。軟件必須測(cè)試程序的狀態(tài)及其轉(zhuǎn)換。測(cè)試軟件的邏輯流程測(cè)試軟件的邏輯流程建立狀態(tài)轉(zhuǎn)換圖建立狀態(tài)轉(zhuǎn)換圖減少要測(cè)試的狀態(tài)及轉(zhuǎn)換的數(shù)量減少要測(cè)試的狀態(tài)及轉(zhuǎn)換的數(shù)量空閑空閑等待用戶等待用戶輸入命令輸入命令按下按下escesc鍵鍵顯示口令框顯示口令框口令錯(cuò)誤口令錯(cuò)誤 消除消除口令正確口令正確初始狀態(tài)消失

22、初始狀態(tài)消失空閑空閑等待用戶等待用戶輸入命令輸入命令按下按下escesc鍵鍵口令正確口令正確口令錯(cuò)誤口令錯(cuò)誤不同形式的狀態(tài)轉(zhuǎn)換圖 在黑盒測(cè)試中,不必了解代碼中設(shè)置的地層變量,在黑盒測(cè)試中,不必了解代碼中設(shè)置的地層變量,從軟件用戶的角度建立狀態(tài)圖即可從軟件用戶的角度建立狀態(tài)圖即可減少要測(cè)試的狀態(tài)及轉(zhuǎn)換的數(shù)量減少要測(cè)試的狀態(tài)及轉(zhuǎn)換的數(shù)量每種狀態(tài)至少訪問一次每種狀態(tài)至少訪問一次測(cè)試最常見最普遍的狀態(tài)轉(zhuǎn)換測(cè)試最常見最普遍的狀態(tài)轉(zhuǎn)換測(cè)試狀態(tài)之間最不常用的分支測(cè)試狀態(tài)之間最不常用的分支測(cè)試所有錯(cuò)誤狀態(tài)及其返回值、測(cè)試所有錯(cuò)誤狀態(tài)及其返回值、測(cè)試隨即狀態(tài)轉(zhuǎn)換測(cè)試隨即狀態(tài)轉(zhuǎn)換失敗狀態(tài)測(cè)試失敗狀態(tài)測(cè)試找到測(cè)試軟

23、件失敗的案例找到測(cè)試軟件失敗的案例。競(jìng)爭(zhēng)條件和時(shí)序錯(cuò)亂競(jìng)爭(zhēng)條件和時(shí)序錯(cuò)亂重復(fù)重復(fù)壓迫壓迫重負(fù)重負(fù)應(yīng)聯(lián)合使用,同時(shí)進(jìn)行 設(shè)置設(shè)置2bwatch 上的時(shí)間的順序圖上的時(shí)間的順序圖:2bwatch用戶用戶按下左和右按鈕按下左和右按鈕:2bwatch輸入輸入 :2bwatch顯示顯示 :2bwatch時(shí)間時(shí)間時(shí)間時(shí)間按下左按鈕按下左按鈕按下右按鈕按下右按鈕按下左和右按鈕按下左和右按鈕閃爍小時(shí)閃爍小時(shí)閃爍分鐘閃爍分鐘增加分鐘增加分鐘刷新刷新提交更新時(shí)間提交更新時(shí)間停止閃爍停止閃爍2bwatch 設(shè)置時(shí)間功能的狀態(tài)圖和測(cè)試結(jié)果設(shè)置時(shí)間功能的狀態(tài)圖和測(cè)試結(jié)果 按左按鈕按左按鈕 按右按鈕按右按鈕按左按鈕按左按

24、鈕 按右按鈕按右按鈕4. 4. 2 2分鐘以后分鐘以后測(cè)量時(shí)間測(cè)量時(shí)間設(shè)置時(shí)間設(shè)置時(shí)間電池沒電電池沒電3.3.按下左右按鈕按下左右按鈕5.5.按下左右按鈕按下左右按鈕/ /蜂鳴蜂鳴8.8. 20 20年以后年以后7.7. 20 20年以后年以后6.6.2.2.1.1.激勵(lì)因素空集合空集合測(cè)量時(shí)間測(cè)量時(shí)間1.1.初始變遷初始變遷測(cè)試的變遷預(yù)期結(jié)果狀態(tài)按下左邊按鈕按下左邊按鈕測(cè)量時(shí)間測(cè)量時(shí)間2.2.同時(shí)按下兩個(gè)按鈕同時(shí)按下兩個(gè)按鈕設(shè)置時(shí)間設(shè)置時(shí)間3.3.等等2 2分鐘分鐘測(cè)量時(shí)間測(cè)量時(shí)間4.4.超時(shí)超時(shí)5.55.5 針對(duì)專門環(huán)境和應(yīng)用的測(cè)試針對(duì)專門環(huán)境和應(yīng)用的測(cè)試5.5.1 5.5.1 gui測(cè)試

25、測(cè)試 常見常見gui測(cè)試指南:測(cè)試指南:對(duì)于窗口對(duì)于窗口對(duì)于菜單和鼠標(biāo)操作對(duì)于菜單和鼠標(biāo)操作對(duì)于數(shù)據(jù)項(xiàng)對(duì)于數(shù)據(jù)項(xiàng)5.5.2 5.5.2 c/s體系結(jié)構(gòu)的體系結(jié)構(gòu)的測(cè)試測(cè)試 整體整體c/sc/s測(cè)試策略測(cè)試策略( (三個(gè)不同層次三個(gè)不同層次) )客戶端應(yīng)以客戶端應(yīng)以“分離的分離的”模式被測(cè)試模式被測(cè)試 ( (不考慮服務(wù)器和底層網(wǎng)絡(luò)的運(yùn)行不考慮服務(wù)器和底層網(wǎng)絡(luò)的運(yùn)行) )客戶端軟件和關(guān)聯(lián)的服務(wù)器端應(yīng)用被一起測(cè)試客戶端軟件和關(guān)聯(lián)的服務(wù)器端應(yīng)用被一起測(cè)試( (網(wǎng)絡(luò)運(yùn)行不被明顯考慮網(wǎng)絡(luò)運(yùn)行不被明顯考慮) )完整的完整的c/sc/s體系結(jié)構(gòu)體系結(jié)構(gòu)( (包括網(wǎng)絡(luò)運(yùn)行和性能包括網(wǎng)絡(luò)運(yùn)行和性能) )被測(cè)被測(cè)試

26、試 c/s c/s常用測(cè)試方法常用測(cè)試方法客戶端應(yīng)用功能測(cè)試客戶端應(yīng)用功能測(cè)試服務(wù)器測(cè)試服務(wù)器測(cè)試(協(xié)調(diào)和數(shù)據(jù)管理功能、性能)(協(xié)調(diào)和數(shù)據(jù)管理功能、性能)數(shù)據(jù)庫測(cè)試數(shù)據(jù)庫測(cè)試事務(wù)測(cè)試事務(wù)測(cè)試網(wǎng)絡(luò)通信測(cè)試網(wǎng)絡(luò)通信測(cè)試5.5.3 5.5.3 實(shí)時(shí)系統(tǒng)測(cè)試實(shí)時(shí)系統(tǒng)測(cè)試 可采用以下四步策略:可采用以下四步策略:(1) (1) 任務(wù)測(cè)試任務(wù)測(cè)試(2) (2) 行為測(cè)試行為測(cè)試(3) (3) 任務(wù)間測(cè)試任務(wù)間測(cè)試(4) (4) 系統(tǒng)測(cè)試系統(tǒng)測(cè)試(1) (1) 任務(wù)測(cè)試任務(wù)測(cè)試 ( (task testing) ) 對(duì)每一個(gè)任務(wù)進(jìn)行單獨(dú)測(cè)試對(duì)每一個(gè)任務(wù)進(jìn)行單獨(dú)測(cè)試( (白盒、黑盒測(cè)試白盒、黑盒測(cè)試) ),發(fā)

27、現(xiàn),發(fā)現(xiàn)邏輯和功邏輯和功能上錯(cuò)誤能上錯(cuò)誤,不能發(fā)現(xiàn)定時(shí)上和行為,不能發(fā)現(xiàn)定時(shí)上和行為上錯(cuò)誤上錯(cuò)誤 。(2)(2)行為行為測(cè)試測(cè)試( (behavioral testing) ) 用用case工具創(chuàng)建應(yīng)用系統(tǒng)模型,工具創(chuàng)建應(yīng)用系統(tǒng)模型,模擬實(shí)時(shí)系統(tǒng)行為。模擬實(shí)時(shí)系統(tǒng)行為。 按類測(cè)試各種事件按類測(cè)試各種事件( (如中斷、控制如中斷、控制信號(hào)、數(shù)據(jù)信號(hào)、數(shù)據(jù)) )。 測(cè)試過的事件以隨機(jī)次序、隨機(jī)頻測(cè)試過的事件以隨機(jī)次序、隨機(jī)頻率送給系統(tǒng)率送給系統(tǒng), ,檢查軟件檢查軟件行為方面的錯(cuò)誤行為方面的錯(cuò)誤. .(3)(3)任務(wù)間測(cè)試任務(wù)間測(cè)試( (intertask testing) ) 檢查檢查與時(shí)間有關(guān)錯(cuò)

28、誤與時(shí)間有關(guān)錯(cuò)誤。 如用不同數(shù)據(jù)速率、處理負(fù)載如用不同數(shù)據(jù)速率、處理負(fù)載 測(cè)試相互通信的異步任務(wù)。測(cè)試相互通信的異步任務(wù)。 通過消息隊(duì)列或數(shù)據(jù)存儲(chǔ)測(cè)試通過消息隊(duì)列或數(shù)據(jù)存儲(chǔ)測(cè)試 任務(wù)間的通信來找出數(shù)據(jù)存儲(chǔ)區(qū)錯(cuò)任務(wù)間的通信來找出數(shù)據(jù)存儲(chǔ)區(qū)錯(cuò) 誤的范圍。誤的范圍。(4) (4) 系統(tǒng)測(cè)試系統(tǒng)測(cè)試 ( (system testing) ) 軟件、硬件組裝后,找出軟件、硬件組裝后,找出軟、軟、硬件接口錯(cuò)誤硬件接口錯(cuò)誤。軟件測(cè)試的過程軟件測(cè)試的過程單元單元測(cè)試測(cè)試被測(cè)被測(cè)模塊模塊集成集成測(cè)試測(cè)試設(shè)計(jì)設(shè)計(jì)信息信息單元單元測(cè)試測(cè)試被測(cè)被測(cè)模塊模塊單元單元測(cè)試測(cè)試被測(cè)被測(cè)模塊模塊測(cè)試過測(cè)試過的模塊的模塊確認(rèn)確

29、認(rèn)測(cè)試測(cè)試系統(tǒng)系統(tǒng)測(cè)試測(cè)試軟件軟件需求需求其它系其它系統(tǒng)元素統(tǒng)元素裝配裝配好的軟件好的軟件 確認(rèn)確認(rèn)的軟件的軟件可運(yùn)可運(yùn)行的行的軟件軟件5.65.6軟件測(cè)試的步驟軟件測(cè)試的步驟軟件測(cè)試策略軟件測(cè)試策略單元測(cè)試單元測(cè)試u uc cd dr rs si iv vstst集成測(cè)試集成測(cè)試確認(rèn)測(cè)試確認(rèn)測(cè)試系統(tǒng)測(cè)試系統(tǒng)測(cè)試系統(tǒng)工程系統(tǒng)工程軟件需求分析軟件需求分析軟件設(shè)計(jì)軟件設(shè)計(jì)代碼編寫代碼編寫5.6.1 5.6.1 單元測(cè)試單元測(cè)試一一. .單元測(cè)試的內(nèi)容單元測(cè)試的內(nèi)容主要對(duì)模塊的主要對(duì)模塊的五個(gè)基本特性五個(gè)基本特性進(jìn)行評(píng)價(jià)進(jìn)行評(píng)價(jià)模塊模塊錯(cuò)誤處理錯(cuò)誤處理模塊接口模塊接口局部數(shù)局部數(shù)據(jù)結(jié)構(gòu)據(jù)結(jié)構(gòu) 重要的

30、重要的執(zhí)行路徑執(zhí)行路徑邊界條件邊界條件1.1.常見錯(cuò)誤類型常見錯(cuò)誤類型 接口錯(cuò)誤接口錯(cuò)誤i/oi/o錯(cuò)誤錯(cuò)誤數(shù)據(jù)結(jié)構(gòu)錯(cuò)誤數(shù)據(jù)結(jié)構(gòu)錯(cuò)誤算法錯(cuò)誤算法錯(cuò)誤比較及控制邏輯錯(cuò)誤比較及控制邏輯錯(cuò)誤錯(cuò)誤處理錯(cuò)誤錯(cuò)誤處理錯(cuò)誤2.2. 模塊測(cè)試基本原則模塊測(cè)試基本原則 至少一次測(cè)試所有語句至少一次測(cè)試所有語句 測(cè)試所有可能的執(zhí)行或邏輯路徑的組合測(cè)試所有可能的執(zhí)行或邏輯路徑的組合 測(cè)試每個(gè)模塊的所有入口和出口測(cè)試每個(gè)模塊的所有入口和出口3.3. 確定單元測(cè)試數(shù)據(jù)集確定單元測(cè)試數(shù)據(jù)集 值域值域值類值類離散值離散值值的次序集值的次序集( (測(cè)試順序文件和測(cè)試順序文件和表表) ) 二二. . 單元測(cè)試的方法單元測(cè)試的方

31、法單元測(cè)試一般為編碼步驟的附屬部分單元測(cè)試一般為編碼步驟的附屬部分. .模塊不是獨(dú)立的程序模塊不是獨(dú)立的程序, ,自己不能運(yùn)行自己不能運(yùn)行, ,要靠其它部分來調(diào)用和驅(qū)動(dòng)要靠其它部分來調(diào)用和驅(qū)動(dòng), ,要為每個(gè)要為每個(gè)單元測(cè)試開發(fā)兩個(gè)軟件單元測(cè)試開發(fā)兩個(gè)軟件: :(1)(1)驅(qū)動(dòng)模塊驅(qū)動(dòng)模塊( (驅(qū)動(dòng)程序驅(qū)動(dòng)程序) ): :相當(dāng)于主模塊相當(dāng)于主模塊(2)(2)樁模塊樁模塊( (測(cè)試存根、連接程序測(cè)試存根、連接程序):): 代替所測(cè)模塊調(diào)用的子模塊代替所測(cè)模塊調(diào)用的子模塊單元測(cè)試的測(cè)試環(huán)境舉例單元測(cè)試的測(cè)試環(huán)境舉例: :b ba ac cd de e待測(cè)試模塊待測(cè)試模塊單元測(cè)試的測(cè)試環(huán)境舉例單元測(cè)試

32、的測(cè)試環(huán)境舉例: :被測(cè)模塊被測(cè)模塊 b b 驅(qū)動(dòng)模塊驅(qū)動(dòng)模塊( (模擬模塊模擬模塊a a) )樁模塊樁模塊( (測(cè)試存根測(cè)試存根) )( (模擬模塊模擬模塊e e) )測(cè)試用例測(cè)試用例測(cè)試結(jié)果測(cè)試結(jié)果許多模塊不能用簡單的軟件進(jìn)行充分的單元許多模塊不能用簡單的軟件進(jìn)行充分的單元測(cè)試測(cè)試, , 此時(shí)此時(shí), , 完全的測(cè)試可放到集成測(cè)試階完全的測(cè)試可放到集成測(cè)試階段再進(jìn)行段再進(jìn)行. .單元測(cè)試的測(cè)試環(huán)境舉例單元測(cè)試的測(cè)試環(huán)境舉例: : 實(shí)際軟件實(shí)際軟件華氏到懾氏華氏到懾氏轉(zhuǎn)換模塊轉(zhuǎn)換模塊溫度數(shù)據(jù)溫度數(shù)據(jù)實(shí)際配置實(shí)際配置測(cè)試用例數(shù)據(jù)測(cè)試用例數(shù)據(jù)結(jié)果結(jié)果 測(cè)試驅(qū)動(dòng)軟件測(cè)試驅(qū)動(dòng)軟件華氏到懾氏華氏到懾氏轉(zhuǎn)

33、換模塊轉(zhuǎn)換模塊結(jié)果結(jié)果測(cè)試驅(qū)動(dòng)際配置測(cè)試驅(qū)動(dòng)際配置單元測(cè)試的測(cè)試環(huán)境舉例單元測(cè)試的測(cè)試環(huán)境舉例 溫度顯示模塊溫度顯示模塊溫度接口溫度接口模塊模塊實(shí)際配置實(shí)際配置測(cè)試驅(qū)動(dòng)際配置測(cè)試驅(qū)動(dòng)際配置 溫度顯示模塊溫度顯示模塊程序員編寫程序員編寫的樁模塊的樁模塊( (測(cè)試存根測(cè)試存根) )溫度值的測(cè)試文件溫度值的測(cè)試文件5.6.2 5.6.2 集成測(cè)試集成測(cè)試( (組裝測(cè)試組裝測(cè)試) ) 集成測(cè)試需考慮的問題集成測(cè)試需考慮的問題: :數(shù)據(jù)穿越接口可能丟失數(shù)據(jù)穿越接口可能丟失. .一模塊可能破壞另一模塊功能一模塊可能破壞另一模塊功能. .子功能組裝可能未產(chǎn)生所要求的子功能組裝可能未產(chǎn)生所要求的 主功能主功能

34、. .全程數(shù)據(jù)結(jié)構(gòu)可能出問題全程數(shù)據(jù)結(jié)構(gòu)可能出問題. .誤差累積問題誤差累積問題. .集成測(cè)試方法集成測(cè)試方法 通常采用黑盒測(cè)試技術(shù)通常采用黑盒測(cè)試技術(shù) 實(shí)施策略實(shí)施策略: :非漸增式測(cè)試非漸增式測(cè)試漸增式測(cè)試漸增式測(cè)試 深度優(yōu)先深度優(yōu)先廣度優(yōu)先廣度優(yōu)先自頂向下結(jié)合自頂向下結(jié)合自底向上結(jié)合自底向上結(jié)合一一. . 非漸增式集成方式非漸增式集成方式 一次就把所有通過了單元測(cè)試的模塊一次就把所有通過了單元測(cè)試的模塊組合在一起進(jìn)行全程序的測(cè)試組合在一起進(jìn)行全程序的測(cè)試. . 缺點(diǎn)缺點(diǎn): :發(fā)現(xiàn)錯(cuò)誤難以診斷定位發(fā)現(xiàn)錯(cuò)誤難以診斷定位. . 又稱又稱“莽撞測(cè)試莽撞測(cè)試” . .二二. . 漸增式集成方式漸增

35、式集成方式 從一個(gè)模塊開始從一個(gè)模塊開始, ,測(cè)一次添加一個(gè)模測(cè)一次添加一個(gè)模塊,邊組裝邊測(cè)試,以發(fā)現(xiàn)與接口相聯(lián)系塊,邊組裝邊測(cè)試,以發(fā)現(xiàn)與接口相聯(lián)系的問題。的問題。自頂向下結(jié)合方式舉例自頂向下結(jié)合方式舉例: :adbe模塊測(cè)試模塊測(cè)試結(jié)合順序結(jié)合順序cf深度優(yōu)先深度優(yōu)先: :a、b、e、c、d、f廣度優(yōu)先廣度優(yōu)先: :a、b、c、d、e、f自頂向下結(jié)合方式舉例自頂向下結(jié)合方式舉例: :( (深度優(yōu)先深度優(yōu)先) )a測(cè)試測(cè)試 as2s2s1s1s3s3a加入加入bs2s2bs3s3s4s4a加入加入es2s2bs3s3ea加入加入ccbs3s3e加入加入dcbde加入加入fcbdeaafs5s

36、5自底向上結(jié)合方式舉例自底向上結(jié)合方式舉例: :a ac cb bd df fe ee ed d1 1c cd d3 3f fd d4 4b bd d2 2e ed dd d5 5f f自底向上結(jié)合方式舉例自底向上結(jié)合方式舉例: :mcd1mambd2d3簇簇1 1簇簇2 2簇簇3 33. 3. 混合集成測(cè)試方法混合集成測(cè)試方法一般對(duì)軟件結(jié)構(gòu)的上層使用自頂向下結(jié)合的一般對(duì)軟件結(jié)構(gòu)的上層使用自頂向下結(jié)合的 方法方法; ;對(duì)下層使用自底向上結(jié)合的方法對(duì)下層使用自底向上結(jié)合的方法; ;自頂向下自頂向下自底向上自底向上 優(yōu)點(diǎn)優(yōu)點(diǎn)可在測(cè)試早期可在測(cè)試早期 實(shí)現(xiàn)并實(shí)現(xiàn)并驗(yàn)證系統(tǒng)主要功能驗(yàn)證系統(tǒng)主要功能設(shè)計(jì)測(cè)試用例容易設(shè)計(jì)測(cè)試用例容易 缺點(diǎn)缺點(diǎn)不需驅(qū)動(dòng)模塊不需驅(qū)動(dòng)模塊需樁模塊需樁模塊不需樁模塊不需樁模塊 只有到最后程序才能作只有到最后程序才能作為一個(gè)整體為一個(gè)整體五五. . 測(cè)試和測(cè)試和測(cè)試測(cè)試測(cè)試測(cè)試(alpha)(alpha)在開發(fā)者的場(chǎng)所由用戶進(jìn)行在開發(fā)者的場(chǎng)所由用戶進(jìn)行, ,在開發(fā)在開發(fā)著關(guān)注和控制的環(huán)境下進(jìn)行著關(guān)注和控制的環(huán)境下進(jìn)行. .測(cè)試測(cè)試(be

溫馨提示

  • 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. 人人文庫網(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)論