第3節(jié)-軟件測試方法_第1頁
第3節(jié)-軟件測試方法_第2頁
第3節(jié)-軟件測試方法_第3頁
第3節(jié)-軟件測試方法_第4頁
第3節(jié)-軟件測試方法_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、軟件測試技術(shù)主講人:秦文上海微創(chuàng)軟件解決方案事業(yè)部 測試用例的定義:(1)測試用例是為特定的目的而設(shè)計的一組測試輸入、執(zhí)行條件和預(yù)期的結(jié)果。(2)測試用例是執(zhí)行的最小實體。 測試用例的特征:(1)最有可能抓住錯誤的;(2)不是重復(fù)的、多余的;(3)一組相似測試用例中最有效的;(4)既不是太簡單,也不是太復(fù)雜。測試用例的定義和特征 在開始實施測試之前設(shè)計好測試用例,可以在開始實施測試之前設(shè)計好測試用例,可以避免盲目測試并提高測試效率。避免盲目測試并提高測試效率。 測試用例的使用令軟件測試的實施重點突出、測試用例的使用令軟件測試的實施重點突出、目的明確。目的明確。 在軟件版本更新后只需修正少部分的

2、測試用在軟件版本更新后只需修正少部分的測試用例便可展開測試工作,降低工作強度、縮短例便可展開測試工作,降低工作強度、縮短項目周期。項目周期。 功能模塊的通用化和復(fù)用化使軟件易于開發(fā),功能模塊的通用化和復(fù)用化使軟件易于開發(fā),而相對于功能模塊的測試用例的通用化和復(fù)而相對于功能模塊的測試用例的通用化和復(fù)用化則會使軟件測試易于開展,并隨著測試用化則會使軟件測試易于開展,并隨著測試用例的不斷精化其效率也不斷攀升。用例的不斷精化其效率也不斷攀升。使用測試用例的好處使用測試用例的好處 等價類劃分等價類劃分 邊界值分析邊界值分析 因果圖因果圖 判定決策表判定決策表 錯誤猜測法錯誤猜測法測試用例的設(shè)計方法測試用

3、例的設(shè)計方法 等價類劃分的辦法是把程序的輸入域劃分成若干部等價類劃分的辦法是把程序的輸入域劃分成若干部分,然后從每個部分中選取少數(shù)代表性數(shù)據(jù)當(dāng)作測分,然后從每個部分中選取少數(shù)代表性數(shù)據(jù)當(dāng)作測試用例。每一類的代表性數(shù)據(jù)在測試中的作用等價試用例。每一類的代表性數(shù)據(jù)在測試中的作用等價于這一類中的其他值,也就是說,如果某一類中的于這一類中的其他值,也就是說,如果某一類中的一個例子發(fā)現(xiàn)了錯誤,這一等價類中的其他例子也一個例子發(fā)現(xiàn)了錯誤,這一等價類中的其他例子也能發(fā)現(xiàn)同樣的錯誤;反之,如果某一類中的一個例能發(fā)現(xiàn)同樣的錯誤;反之,如果某一類中的一個例子沒有發(fā)現(xiàn)錯誤,則這一類中的其他例子也不會查子沒有發(fā)現(xiàn)錯誤

4、,則這一類中的其他例子也不會查出錯誤。出錯誤。等價類劃分等價類劃分1.如果輸入條件規(guī)定了取值的范圍或值的個數(shù),則可確定一個有效等價類和兩個無效等價類;2.如果一個輸入條件說明了一個“必須成立”的情況,則可劃分一個有效等價類和一個無效等價類;3.如果輸入條件規(guī)定了輸入數(shù)據(jù)的一組可能的值,而且程序是用不同的方式處理每一種值,則可為每一種值劃分一個有效等價類,并劃分一個無效等價類;4.如果我們確知,已劃分的某等價類中的各元素(例子)在程序中的處理方式是不同的,則應(yīng)據(jù)此將此等價類進(jìn)一步劃分成更小的等價類。5.在確立了等價類之后,建立等價類表,列出所有劃分出的等價類:怎樣劃分等價類(一)怎樣劃分等價類(

5、一) 為每個等價類規(guī)定一個惟一的編號;為每個等價類規(guī)定一個惟一的編號; 設(shè)計一個新的測試用例,使其盡可能多地覆蓋尚未設(shè)計一個新的測試用例,使其盡可能多地覆蓋尚未覆蓋的有效等價類。重復(fù)這一步,最后使得所有有覆蓋的有效等價類。重復(fù)這一步,最后使得所有有效等價類均被測試用例所覆蓋;效等價類均被測試用例所覆蓋; 設(shè)計一個新的測試用例,使其只覆蓋一個無效等價設(shè)計一個新的測試用例,使其只覆蓋一個無效等價類。重復(fù)這一步使所有無效等價類均被覆蓋。類。重復(fù)這一步使所有無效等價類均被覆蓋。確定等價類測試用例的步驟確定等價類測試用例的步驟 第一步:在本案例中我們根據(jù)測試需求可以把兩位數(shù)加法分為如圖的三個等價類:一個

6、有效數(shù)據(jù)的等價類,兩個無效數(shù)據(jù)等價類(有效數(shù)據(jù)等價類就是:由那些對程序的規(guī)格說明有意義的、合理的輸入數(shù)據(jù)所構(gòu)成的集合;無效數(shù)據(jù)等價類就是:那些對程序的規(guī)格說明不合理的或無意義的輸入數(shù)據(jù)所構(gòu)成的集合)。等價類劃分等價類劃分 第二步:在實際工作中,我們通常在確立了等價類以后,把程序中所有的等價類建立等價類表,以便在編寫測試用例的時候有所依據(jù)。等價類劃分等價類劃分 第三步:根據(jù)上面的等價類表,我們就可以確定測試用例了,步驟為: 為等價類表中的每一個等價類分配一個唯一的編號。 設(shè)計一個新的測試用例,使它能夠盡量覆蓋尚未覆蓋的有效等價類。重復(fù)這一步驟,從而使所有有效等價類均被測試用例所覆蓋。 與上一步類

7、似,設(shè)計一個新的測試用例,使它只覆蓋一個無效等價類。重復(fù)這一步驟,從而使所有無效等價類均被測試用例所覆蓋。等價類劃分等價類劃分 第四步:細(xì)化等價類劃分 在測試“-99=數(shù)值=99”的這個等價類區(qū)間的時候,我們會發(fā)現(xiàn)如1040,-20+30和-30+(-30)這類的正數(shù)相加,正數(shù)負(fù)數(shù)相加,負(fù)數(shù)相加也是不同的等價區(qū)間。因此我們可以使用更多的等價類劃分:等價類劃分等價類劃分根據(jù)以上等價類劃分的結(jié)果,得出下表的等價類表 第五步:根據(jù)上面劃分的4個等價類,我們至少需要有5個測試用例等價類劃分等價類劃分 邊界值分析法是一種補充等價劃分的測試用例設(shè)計技術(shù),它不是選擇等價類的任意元素,而是選擇等價類邊界的測試

8、用例。實踐證明,在設(shè)計測試用例時,對邊界附近的處理必給予足夠的重視,為檢驗邊界附近的處理專門設(shè)計測試用例,常常取得良好的測試效果。邊界值分析法不僅重視輸入條件邊界,而且也從輸出域?qū)С鰷y試用例。邊界值分析邊界值分析1.如果輸入條件規(guī)定了取值范圍,應(yīng)以該范圍的邊界內(nèi)及剛剛超范圍的邊界外的值作為測試用例。如以a和b為邊界,測試用例應(yīng)當(dāng)包含a和b及略大于a和略小于b的值;2.若規(guī)定了值的個數(shù),分別以最大、最小個數(shù)及稍小于最小、稍大于最大個數(shù)作為測試用例;3.針對每個輸出條件使用前面的第1)和2)條原則;4.如果程序規(guī)格說明中提到的輸入或輸出域是個有序的集合(如順序文件、表格等),就應(yīng)注意選取有序集的第

9、一個和最后一個元素作為測試用例;5.分析規(guī)格說明,找出其他的可能邊界條件。邊界值設(shè)計遵守的幾條原則邊界值設(shè)計遵守的幾條原則 由于允許輸入的數(shù)值在-99到99之間,所以我們可以把-99和99看作兩個邊界值。我們測試的時候可以取緊鄰邊界值的數(shù)值和邊界值本身作為輸入。 邊界值邊界值 等價類劃分法和邊界值分析方法都是著重考慮輸入條件,但沒有考慮輸入條件的各種組合、輸入條件之間的相互制約關(guān)系。這樣雖然各種輸入條件可能出錯的情況已經(jīng)測試到了,但多個輸入條件組合起來可能出錯的情況卻被忽視了。 如果在測試時必須考慮輸入條件的各種組合,則可能的組合數(shù)目將是天文數(shù)字,因此必須考慮采用一種適合于描述多種條件的組合、

10、相應(yīng)產(chǎn)生多個動作的形式來進(jìn)行測試用例的設(shè)計,這就需要利用因果圖(邏輯模型)。因果圖法 因果圖法定義 是一種利用圖解法分析輸入的各種組合情況,從而設(shè)計測試用例的方法,它適合于檢查程序輸入條件的各種組合情況 因果圖設(shè)計測試用例思想 首先從程序規(guī)格說明書的描述中,找出因(輸入條件)和果(輸出結(jié)果或者程序狀態(tài)的改變); 然后通過因果圖轉(zhuǎn)換為判定表,最后為判定表中的每一列設(shè)計一個測試用例.因果圖法 (1)分析軟件規(guī)格說明描述中,哪些是原因 (即輸入條件或輸入條件的等價類),哪些是結(jié)果 (即輸出條件),并給每個原因和結(jié)果賦予一個標(biāo)識符; (2)分析軟件規(guī)格說明描述中的語義,找出原因與結(jié)果之間,原因與原因之

11、間對應(yīng)的是什么關(guān)系? 根據(jù)這些關(guān)系,畫出因果圖; (3)由于語法或環(huán)境限制,有些原因與原因之間,原因與結(jié)果之間的組合情況不可能出現(xiàn)。為表明這些特殊情況,在因果圖上用一些記號標(biāo)明約束或限制條件; (4)把因果圖轉(zhuǎn)換成判定表; (5)把判定表的每一列拿出來作為依據(jù),設(shè)計測試用例。因果圖測試步驟因果圖畫法 如圖1中所示,ci表示原因,一般置于圖左部;ei表示結(jié)果,一般置于圖右部。ci和ei都可以取值0或1,0表示某狀態(tài)不出現(xiàn),1表示某狀態(tài)出現(xiàn)。 (1)恒等:若c1為1,則e1也為1;否則,e1為0。 (2)非: 若c1為1,則e1為0;否則e1為1。 (3)或: 若c1或c2或c3為1,則e1為1;

12、否則e1為0;“或” 可有任意個輸入。 (4)與: 若c1和c2都為1,則e1為1;否則e1為0?!芭c” 也可有任意個輸入因果圖中基本圖形介紹 因果圖中使用了簡單的邏輯符號,以直線連接左右結(jié)點,左結(jié)點表示輸入狀態(tài)(或稱原因),右結(jié)點表示輸出狀態(tài)(或稱結(jié)果),而在實際問題中,輸入條件相互之間還可能存在某些依賴關(guān)系,我們稱之為“約束”,比如某些輸入條件本身不可能同時 出現(xiàn),輸出狀態(tài)間也往往存在約束。在因果圖中用特定符號表明這些約束,見下圖:因果圖中基本圖形介紹因果圖中基本圖形介紹 (1)E約束(異):a、b中至多有一個可能為1,即a、b不 可能同時為1。 (2)I約束(或): a、b、c中至少有一

13、個必須為1,即a、 b、c不能同時為 0。 (3)O約束(唯一):a、b中必須有一個,且僅有一個為1。 (4)R約束(要求):a是1時,b必須是1,即不可能出現(xiàn)a 是1時,b是 0。 (5)M約束(強制):如果結(jié)果a為1,則結(jié)果b強制為0。a為零 時,b值不定. 注意:15中只有5是對結(jié)果的約束。因果圖中基本圖形介紹 有一個處理單價為5角的盒裝飲料的自動售貨機軟件。若投入5角硬幣,按下“可樂”,“雪碧”或“紅茶”按鈕,相應(yīng)的飲料就送出來。若投入的是1元硬幣,在送出飲料的同時退還5角硬幣。因果圖測試(例子) 第一步分析原因及結(jié)果因果圖測試(例子) 第二步畫出因果圖因果圖測試(例子) 第三步判定表

14、因果圖測試(例子) 第四步設(shè)計測試用例因果圖測試(例子) 優(yōu)點: (1)考慮到了輸入情況的各種組合以及各個輸入情況之間的相互制約關(guān)系。 (2)能夠幫助測試人員按照一定的步驟,高效率的開發(fā)測試用例。 (3)因果圖法是將自然語言規(guī)格說明轉(zhuǎn)化成形式語言規(guī)格說明的一種嚴(yán)格的方法,可以指出規(guī)格說明存在的不完整性和二義性。 缺點: 輸入條件的組合數(shù)2隨a的上升急劇增長,當(dāng)a較大時,因果圖的結(jié)構(gòu)將變得十分復(fù)雜,而把因果圖轉(zhuǎn)換為判定表則更為麻煩。因果圖測試優(yōu)缺點 在所有的黑盒測試方法中,基于決策表(也稱判定表)的測試是最為嚴(yán)格、最具有邏輯性的測試方法。 決策表:是分析和表達(dá)多邏輯條件下執(zhí)行不同操作的情況的工具

15、。它可以把復(fù)雜的邏輯關(guān)系和多種條件組合的情況表達(dá)得既具體又明確。 在一些數(shù)據(jù)處理問題當(dāng)中,某些操作的實施依賴于多個邏輯條件的組合,即:針對不同邏輯條件的組合值,分別執(zhí)行不同的操作。決策表很適合于處理這類問題。決策表測試法 決策表組成 決策表通常由4部分組成,分別是: (1)條件樁列出問題的所有條件,除特別說明,列出的條件的先后次序無關(guān)緊要。 (2)條件項針對條件樁給出的條件列出所有可能的取值。 (3)動作樁列出問題規(guī)定的可能采取的操作,這些操作的順序一般沒有約束。 (4)動作項與條件項緊密相關(guān),指出在條件項的各組取值情況下應(yīng)采取的動作。 決策表測試法(續(xù))決策表測試法(續(xù))條件樁條件樁動作樁動

16、作樁 條件項條件項 動作項動作項規(guī)則規(guī)則規(guī)則:是指任何一個條件組合的特定取值及其相應(yīng)要執(zhí)行的操作。在決策表中貫穿條件項和動作項的一列就是一條規(guī)則。 建立決策表的步驟: (1) 確定規(guī)則的個數(shù)。假如有n個條件,每個條件有兩個取值(0,1),則有2n種規(guī)則。 (2) 列出所有的條件樁和動作樁。 (3) 填入條件項。 (4) 填入動作項,得到初始決策表。 (5) 簡化決策表,合并相似規(guī)則。 若表中有兩條以上規(guī)則具有相同的動作,并且在條件項之間存在極為相似的關(guān)系,便可以合并。合并后的條件項用符號“-”表示與取值無關(guān),稱為無關(guān)條件。決策表測試法(續(xù)) 適合使用決策表設(shè)計測試用例的條件:(1) 規(guī)格說明以

17、決策表形式給出,或較容易轉(zhuǎn)換成 決策表。(2) 條件的排列順序不會也不應(yīng)影響執(zhí)行的操作。(3) 規(guī)則的排列順序不會也不應(yīng)影響執(zhí)行的操作。(4) 當(dāng)某一規(guī)則的條件已經(jīng)滿足,并確定要執(zhí)行的操作后,不必檢驗別的規(guī)則。(5) 如果某一規(guī)則得到滿足要執(zhí)行多個操作,這些操作的執(zhí)行順序無關(guān)緊要。決策表測試法(續(xù)) 通常,在確定測試方法時,應(yīng)遵循以下原則: (1) 根據(jù)程序的重要性和一旦發(fā)生故障將造成的損失來確定測試等級和測試重點。 (2) 認(rèn)真選擇測試策略,以便能盡可能少的使用測試用例,發(fā)現(xiàn)盡可能多的程序錯誤。因為一次完整的軟件測試過后,如果程序中遺留的錯誤過多并且嚴(yán)重,則表明該次測試是不足的,而測試不足則意味著讓用戶承擔(dān)

溫馨提示

  • 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

提交評論