




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、常用功能性測試方法A 1 邊界值測試A 11 定義邊界值測試是對輸入或輸出的邊界值進行測試的一種黑盒測試方法。注:通常邊界值分析法是作為等價類測試法的補充。A12適用范圍a) 分類:1)一般邊界值測試;2)健壯性測試;3)最壞情況測試;4)特殊性測試。A13測試過程a) 用例格式定義:測試對象、測試用例唯一編號、輸入數據、預期輸出數據。b) 測試步驟:1) 分析測試規格說明書,確定測試對象的邊界值;2) 根據測試對象的邊界值按要求生成測試用例;3) 根據 2)所在的測試用例完成測試;4) 根據測試結果填寫缺陷報告。A 14 應用實例實踐經驗表明, 程序往往在處理邊界情況時發生錯誤。 邊界情況值
2、輸入等價類和輸出等 價類邊界的情況。因此檢查邊界情況的測試用例比較高校的,可以查出更多錯誤。例如,在做三角形設計時,要輸入三角形的三個邊長:A、B和G這三個數值應當滿足A>0, B>0, C>0, A+B>C, A+C>B, B+C>A才能都成三角形。但如果把六個不等式的中任 何一個“ >”錯寫成,那樣不能構成三角形的問題恰出現在容易被疏忽的邊界附近。使用邊界值方法設計測試用例時一般與等價類劃分結合起來。 但它不是從一個等價類中 選擇一個例子作為代表,而是將測試邊界情況作為重點目標,選取正好=、剛剛>或剛剛 <邊界值得測試數據。下面提供的一
3、些原則供參考:1) 如果輸入條件規定了值得范圍, 可以選擇正好等于邊界值得數據作為合理的測試用 例。同時還要選擇剛好越過邊界值得數據作為不合理的測試用例。如輸入位數的范 圍是(0, 8),可以取0、8、9等位數的值作為測試用例數據。2)對每個輸入條件指出了輸入數據的個數,則按最大個數、最小個數、比最小個數少1、比最大個數多1等情況分別設計測試用例。如一個輸入文件可包括1-255個記錄,則分別設計有1個記錄、255個記錄,以及0個記錄和256個記錄的輸入文件 的測試用例。3)對每個輸出文件分別按照以上原則(1 )或(2 )確定輸出的邊界情況。 假如某社區衛生綜合管理統計規定,只能查詢入園日期為
4、1995-2004年的孩子信息,可以設計 測試用例,使得查詢范圍內的某一年后的孩子的信息,還需設計查詢1995年、2005年孩子信息的測試用例(不合理輸出等價類)由于,輸出值的邊界不與輸入值得邊界相對應,所以要檢查輸出值得邊界不一定可能,要產生超出輸出值之外的結果也不一定能做到,但必要時還需試一試。4)如果程序的規格說明給出輸入或輸出域是有序集合(如順序文件、線性表、鏈表等),則應選取集合的第一個元素和最后一個元素作為測試用例。“報表日期”邊界值分析法測試用例輸入等價類測試用例說明測試數據期望結果選取理由報表日期:2個數字字符05:顯示出錯僅有兩個合法字符5個數字字符20048顯示出錯比有較長
5、度少16個數字字符200408輸出有效類型及長度均有效7個數字字符20044018顯示出錯比有效長度多1有一個非數字字符2004, 8顯示出錯有一個非法字符全部是非數字字符Day顯示出錯6個非法字符日期范圍在有效范圍邊界上199501輸入有效最小日期選取數據200501輸入有效最大日期199500顯示錯誤剛剛小于最小日期200513顯示錯誤剛剛大于最大日期月份范圍月份為1199501輸入有效最小月份月份為12199512輸入有效最大月份月份1199500顯示錯誤剛剛小于最小月份月份12199513顯示錯誤剛剛大于最大月份A. 2等價類測試A. 2. 1定義等價類測試是把所有可能的輸入數據(即程
6、序的輸入域)劃分成若干部分(子集),然后從每一個子集中選取少數具有代表性的數據作為測試用例。該方法是一種常用的黑盒測試用例設計方法。A 22 適用范圍a) 分類1) 弱一般等價類測試;2) 強一般等價類測試;3) 弱健壯等價類測試;4) 強健壯等價類測試;b) 劃分等價類的標準1) 完備測試、避免冗余;2) 劃分等價類重要的是: 集合的劃分, 劃分為互不相交的一組子集, 而子集的并 是整個集合;3) 并是整個集合:完備性;4) 子集互不相交:保證一種形式的無冗余性;5) 同一類中標識(選擇)一個測試用例,同一個等價類中,往往處理相同,相同 處理映射到“相同的執行路勁” 。c) 劃分等價類方法1
7、) 在輸入條件規定了一個取之范圍或值的個數的情況下, 則可以確定一個有效等 價類和兩個無效等價類;例如, 輸入值是兒童的編號位數,取值范圍為 “ 0<編號位數 <=8”,確定一個合 理的等價類為 0<編號位數 <=8,兩個不合理的等價類為“編號位數 <0”和“編 號位數 >8”。2) 在輸入條件規定了輸入值得集合或者規定了 “必須如何” 的條件的情況下, 可 以確立一個有效等價類和一個無效等價類;例如, 輸入條件上說明教師的職稱可為助教、 講師、副教授、 教授四種職稱之 一,則分別取這 4 個值作為 4 個合理等價類, 另外把 4 個職稱以外的任何職稱 作為
8、不合理等價類。3) 在輸入條件是一個布爾量的情況下, 可以確定一個有效等價類和一個無效等價 類;4) 在規定了輸入數據的一組值(假定 n 個),并且程序要對每一個值分別處理的 情況下,可確定 n 歌有效等價類和一個無效等價類;5) 在規定輸入數據必須遵守的規則的情況下, 可確定一個有效等價類 (符合規則) 和若干個無效等價類(從不同角度違反規則) ;6) 在確知劃分的等價類中各個元素在程序處理中的方式不同的情況下, 則應再將 等價類進一步的劃分為更小的等價類。A 23 測試過程a) 用例格式定義:在確立的等價類后,可建立等價類表,列出說有劃分的等價類輸入 條件,有效等價類、無效等價類,然后劃分
9、出等價類中以下的三個原則設計測試用例。1) 為每一個等價類規定一個唯一的編號;2) 設計一個新的測試用例, 使其可能多地覆蓋尚未被覆蓋的有效的等價類, 重復 這一步,直到所有的有效等價類都被覆蓋為止;3) 設計一個新的測試用例, 使其僅覆蓋一個尚未覆蓋的無效等價類, 重復這一步, 直到所有的無效等價類都被覆蓋為止。b) 測試步驟1) 分析軟件規格說明,確定測試對象的等價類劃分;2) 根據測試對象的邊界值按要求生成測試用例;3) 根據2)所在的測試用例完成測試;4) 根據測試結果,填寫缺陷報告。A. 2. 4應用實例例:某報表系統,要求用戶輸入報表的日期。假設日期限制在2000年1月至2008年
10、12月,即系統只能對該段日期由年月的六位數字字符組成,前四位代表年,后兩位代表月。現用等價劃分法設計測試用例,來測試程序的“日期檢查功能”。劃分等價類標號。劃分成三個有效等價類,七個無效的等價類如表所示:“報表日期”輸入條件的等價類表輸入數據合理等價類不合理等價類報表日期(1)六位數字字符(2) 有非數字字符(3) 少于六位數字字符(4) 多于六位數字年份范圍(5)在 2000-2008 之間(6) 小于 2000(7) 大于 2008月份范圍(8)在1-12之間(9) 等于0(10) 大于121.為合理等價類設計測試用例,對于表中編號1、5、8對應的三個合理等價類, 用一個測試用例覆蓋;測試
11、數據期望結果覆蓋范圍200605輸入有效1、5、82.為每一個不合理等價類至少設計一個測試用例。測試數據期望結果覆蓋范圍99MAY輸入無效22005輸入無效32005 005輸入無效4198912輸入無效6200901輸入無效7200700輸入無效9200613輸入無效103. 注意在7個不合理的測試用例中, 不能出現相同的測試用例,否則相當于一個測試用例覆蓋了一個以上不合理等價類,使程序測試不完全。4. 等價類劃分方法比隨機選擇測試用例要好的多,但這個方法的缺點是沒有選擇某些高的、能夠發現更多錯誤的測試用例。A. 3錯誤推測法在測試程序時,人們可能根據經驗或直覺推測程序中可能存在的各種錯誤,
12、從而有針對性的編寫檢查這些錯誤的測試用例,這就是錯誤推測法。錯誤推測法沒有確定的步驟, 憑經驗進行。它的基本思想是列出程序中可能發生錯誤的 情況,根據這些情況選擇測試用例。A. 4基于決策表測試A. 4. 1定義依據測試需求,使用決策表生成測試用例的方法。A. 4. 2適用范圍a)分析復雜邏輯關系的情況下使用;b)決策表的結構:條件樁條件項規則動作樁動作項1)條件樁:列出了問題得所有條件。通常認為列出的條件的次序無關緊要;2)動作樁:列出了問題規定可能采取的操作。這些操作的排列順序沒有約束;3)條件項:列出針對它左列條件的取值。在所有可能的情況下的真假值;4)動作項:列出在條件項的各個取值情況
13、下應該采取的動作;5)規則:任何一個條件組合的特定取值及其相應要執行的操作稱為規則。在判定表中貫穿條件項和動作項的一列就是一條規則。顯然判定表中列出多少條件取值,就有多少條件規則,即條件項和動作項有多少列;6)化簡:就是規則合并有兩條或多條規則具有相同的工作,并且其條件項存在著極為相似的關系。A. 4. 3測試過程a)分析軟件規格說明,根據需求將測試對象的相關內容填入決策表;b)根據決策表生成測試用例;c)依據測試用例完成測試;d)根據測試結果,填寫缺陷報告。A. 5因果圖測試A. 5. 1定義因果圖測試是一種利用圖解法分析輸入的各種組合情況,從而設計測試用例的方法。A. 5. 2適用范圍它適
14、合用于檢查程序輸入條件的各種組合情況。但沒有考慮輸入條件的各種注:等價類分析法和邊界值分析法都是著重考慮輸入條件, 組合、輸入條件之間的相互制約關系a)4種符號分別表示了規格說明中間4種因果關系;(a)恒等非(b)(d )與(C)或b)因果圖中使用了簡單的邏輯符號,以直線連接左右結點。左結點表示輸入狀態(或 稱原因),右結點表示輸出狀態(或稱結果);c)C1表示原因,通常置于圖的左部:E1表示結果,通常置于圖的右部。C1和E1均可取值0或1, 0表示某狀態下不出現,1表示某 狀態下出現;d)因果圖概念1)關系1. 恒等:若C1是1,則E1也是1 ;否則E1為0;2. 非:若C1是1,貝U E1
15、是哦0;否則E1是1;3. 或:若C1或C2或C3是1,則E1是1 ;否則E1為0。“或”可有任意個 輸入;4. 與:若C1或C2都是1,則E1為1 ;否則E1為0。“與”也可以有任意個 輸入;2)約束輸入狀態相互之間還可能存在某些依賴關系, 本身不可能同時出現。稱為約束。例如,某些輸入條件 在因果圖中,用特定的符號標明輸出狀態之間也存在約束。O (唯一)R (要求)這些約束。(1輸入條件的約束有以下 4類: E約束(異):a和b中至多有一個可能為 1,即b和c中至少有一個必須是 1,即a、b、和c不能a和b不能同時為1;a和b必須有一個,且僅有 1個為1; a是1時,b必須是1;I約束(或)
16、:a、 同時為0;O約束(唯一): R約束(要求):(2輸出條件的約束類型輸出條件的約束只有 M約束(強制):若結果a是1,則結果b強制 為0.A. 5. 3設計步驟,哪些a)分析軟件規格說明描述中,哪些是原因(即輸入條件或輸入條件的等價類)是結果(即輸出條件),并給出每個原因和結果賦予一個標識符;b) 分析軟件規格說明描述中的語義, 找出原因與結果之間, 原因與原因之間對應的關 系,根據這些關系,畫出因果圖;c) 由于語法或環境限制, 有些原因與原因之間, 原因和結果之間的組合情況不可能出 現,為表明這些特殊情況,在因果圖上用一些記號表明約束或限制條件;d) 把因果圖轉換為判定表;e) 把判
17、定表的沒一個列拿出來作為依據,設計測試用例。A 54 測試過程a) 分析軟件規格說明描述中,哪些是原因(即輸入條件或輸入條件的等價類) ,哪些 是結果(即輸入條件) ,并給每個原因和結果賦予一個標識符;b) 分析軟件規格說明描述中的語義, 找出原因和結果之間, 原因和原因之間對應的關 系,根據這些關系畫出因果圖;c) 由于語法或環境限制, 有些原因和原因之間, 原因和結果之間的組合情況不可能出 現,為表明這些特殊情況,在因果圖上用一些記號表明約束或限制條件;d) 把因果圖轉換為判定表;e) 把判定表的每一列拿出來作為依據,設計測試用例。A 6 控制流測試A6 .1 適用范圍分類:語句復雜、判定
18、復雜、條件覆蓋、判定 / 條件覆蓋、條件組合覆蓋、路徑覆蓋。1) 語句覆蓋 為了提高發現錯誤的可能性, 在測試時應該執行到程序的每一個語句。 語句覆 蓋是指設計足夠的測試用例,是被測試程序中的每個語句至少執行一次。2) 判定覆蓋 判定覆蓋指設計足夠的測試用例, 使得被測程序中每個判定表達式至少獲得一 次“真”值和“假”值,從而使程序的每一個分支至少都通過一次,因此判定 覆蓋也成為分支覆蓋。3) 條件覆蓋 條件覆蓋是指設計足夠的測試用例, 使得判定表達式中每個條件的各種可能的 值至少出現一次。4) 判定 / 條件覆蓋 判定 / 條件覆蓋指設計足夠的測試用例,使得判定表達式的每個條件的所有可 能取
19、值至少出現一次,并使每個判定表達式所有可能的結果也至少出現一次。5) 條件組合覆蓋 條件組合覆蓋是比較強的覆蓋標準, 它是指設計足夠的測試用例沒事的每個判 定表達式中條件的各種可能的值的組合都至少出現一次。6) 路徑覆蓋 路徑覆蓋是指設計足夠的測試用例,覆蓋被測試程序中所有的可能的路徑。A6 .2 測試過程a) 用例格式定義:測試對象、測試用例唯一編號、輸入數據、預期輸出數據。b) 測試步驟:1) 分析軟件規格說明,將程序繪制成程序控制流程圖;2) 根據需求選擇覆蓋測試方法;3) 根據所選用的覆蓋測試方法生成測試用例;4) 依據測試用例完成測試;5) 根據測試結果,填寫缺陷報告。A 7 基本路徑覆蓋測試A71 定義基本路徑覆蓋測試法是在程序控制流圖的的基礎上,通過分析控制構造的環路復雜性, 到處基本可執行路徑集合,從而設計測試用例的方法。A 711 測試過程a) 程序的控制流程圖:描述程序
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論