測試需求**
開發需求dr;協議標準需求pr;使用者需求ur;案例庫需求lr;競爭需求cr;繼承需求sr;
2. 測試項分析步驟
3. 測試分析方法
a. 質量模型分析法:功能測試項、效率測試項、可靠性、易用性、可維護性、可移植性;
b. 使用者場景分析法:遊客、普通使用者、vip使用者、管理員使用者等,不同角色許可權不同,測試點也不同;
c. 繼承性分析:新增功能,繼承舊功能、新舊功能之間關係、影響程度高低;
d. 功能互動分析:功能點與功能點之間、時序(並行、序列)、主被動;
4. 劃分測試項優先順序
5. 測試設計:思路--測試是不能窮舉,根據一些設計方法去選取一些資料盡量覆蓋多個測試點;
1)黑盒測試用例設計技術
1. 等價類劃分
概念:將輸入/輸出域分為若干個子集,從中選取代表資料,如果被選取的資料測試沒有問題,就認為未被選取的資料測試也沒有問題;
原則:a. 若輸入(輸出)是乙個取值範圍或者值的個數,則劃分乙個有效等價類,兩個無效等價類;
b. 若輸入(輸出)是乙個有限的集合或者必須如何的條件或者布林值,則劃分成乙個有效等價類和乙個無效等價類;
c. 若輸入(輸出)已經劃分好有效等價類和無效等價類,針對有效等價類具體的值有不同的處理結果和方式,則劃分成多個有效等價類和乙個無效等價類;
d. 若輸入(輸出)要同時滿足多個條件,則劃分成乙個有效等價類和多個無效等價類(從不同角度違反規則);
步驟:將srs劃分成規格片段→找出輸入條件→進行等價類劃分→給劃分每乙個等價類編號→選代表資料設計用例→直到所有等價類都被覆蓋;
ps:編寫用例原則:一條測試用例要盡量覆蓋多個有效等價類&&一條測試用例只覆蓋乙個無效等價類;
2. 邊界值分析
概念:邊界值分析法是對等價類劃分法的一種補充,大量的經驗資料表明,邊界是問題多發區,如果邊界測試沒有問題,就認為內部資料發生問題的概率較小;
原則:a. 如果輸入(輸出)是乙個取值範圍或者值的個數,則以邊界或者邊界附近的值作為測試用例資料選取;
b. 如果輸入(輸出)是乙個有序的集合,則以第乙個元素和最後乙個元素作為測試用例資料選取;
c. 如果輸入(輸出)的值的個數是乙個取值範圍,則以最大值;最大值+1;最小值;最小值-1作為測試用例資料選取;
d. 如果是乙個內部資料結構,則以極限值作為測試用例資料選取;
步驟:將srs劃分成規格片段→找出輸入條件→進行等價類劃分→給劃分每乙個等價類編號→分析每個資料型別,判斷是否有邊界值→生成用例;
ps:只有等價類和邊界值才能生成最終的測試用例,其它測試設計方法生成的都是測試規則或者測試路徑(邏輯測試用例)
3. 判定表
概念:分析和表達多種輸入條件進行不同組合來完成不同動作的一種工具,目的是分析複雜邏輯關係的條件組合;
步驟:將srs劃分成規格片段→找出條件樁、條件項,動作樁,動作項→對條件項進行排列組合生成規則數→合併化簡→設計最終用例;
特點: a. 彌補了等價類不考慮組合的情況;
b. 是一種全排列組合情況,測試較全面;
c. 測試規則數目龐大,測試用例數量龐大,導致測試工作量大;
d. 合併有風險,化簡需謹慎;
e. 能發現需求規格說明書中不符合邏輯的需求;
f. 對於邏輯關係比較複雜的需求無法勝任;
適用範圍:功能測試;
4. 因果圖
概念:將複雜邏輯關係的需求轉化為判定表的一種中間系統化方法。目的是為了得到判定表;
邏輯關係:a.因果之間:恒等/非/與/或;
b.原因之間:e(排斥:最多乙個為真)、i(包容:至少乙個為真)、o(唯一:有且只有乙個為真)、r(要求:a為真,b需為真)、 m(強制:a為真,b需為假)
中間節點: 當多個輸入之間的關係不是單純一種與,或的關係,利用中間節點訪問中間結果;
當多個輸入都在描述同一件事情的時候,可以利用中間節點歸併邏輯;
步驟:將srs劃分成規格片段→分析原因和結果→畫因果圖→判斷制約關係→生成判定表→合併刪除→設計用例
特點: a. 彌補了等價類不考慮組合的情況;
b. 是一種全排列組合的測試方法,測試的比較全面;
c. 測試規則數目龐大,測試用例數量龐大,導致測試工作量大;
d. 能發現需求規格說明書中不符合邏輯的需求;
e. 能夠分析複雜邏輯關係的需求;
f. 制約關係可以快速刪減不符合邏輯的規則,從而提高測試設計效率;
5. 正交實驗法
概念:利用正交表進行試驗的一種方法,是一種兩兩組合的方法,經驗表明,如果兩兩組合測試沒有問題就認為其他組合發生問題的概率較小。
特點:兩兩組合;直接套用;經濟高效;
步驟:將srs劃分成規格片段→找出因子和狀態→構造因子狀態表→加權篩選→套用正交表→對生成的組合進行增刪→設計用例
適用範圍:功能測試,配置測試
6. 狀態遷移圖(點到點,內部路徑不可迴圈)
概念:針對有限狀態機的狀態和合法的跳轉條件進行測試,目的是為了測試所有的狀態能夠按照正確的條件進行跳轉和遷移。不要有未覆蓋到的狀態和非法的跳轉;
有限狀態機:web網頁,嵌入式系統
步驟:將srs劃分成規格片段→找出狀態和跳轉條件→設定初始狀態,畫狀態遷移圖→事件轉換表→狀態轉換樹→測試路徑→新增非法路徑→設計用例
7. 流程分析法(端到端,內部路徑可迴圈)
步驟:分析srs→找到主要功能點→畫出主幹圖(基本流)→細化分支→進行路徑組合確定優先順序
8. 輸入域覆蓋法
9. 輸出域覆蓋法
分析輸出的等價類和邊界值,達到輸出域等價類覆蓋和輸出域邊界值覆蓋,使用此測試方法需要對系統的功能有特別深入的了解,採用該方法的一般來說是行業內的專家;
10.異常分析法
對系統有可能存在異常的操作進行測試,主要針對系統的容錯能力,故障恢復能力進行測試;
11. 錯誤猜測法
根據經驗猜測,是基於經驗的測試法,是對其他測試方法的補充,不單獨使用
語句覆蓋
判定覆蓋
條件覆蓋
判定-條件覆蓋
條件組合覆蓋
路徑覆蓋
詳見測試覆蓋率:
軟體測試用例設計方法
1.概述 grenford j.myers在 the art of software testing 一書中提出 乙個好的測試用例是指很可能找到迄今為止尚未發現的錯誤的測試,由此可見測試用例設計工作在整個測試過程中的地位,我們不能只憑藉一些主觀或直觀的想法來設計測試用例,應該要以一些比較成熟的測試用...
軟體測試用例設計方法
一 測試過程中遇到的問題 1.不知道是否較全面的測試了所有內容 2.測試的覆蓋率無法衡量 3.對新版本的重複測試很難實施 4.存在大量冗餘測試影響測試效率。二 等價劃分 分析問題 1.等價類劃分概念 2.等價類 是指某個輸入域的子集合。在該子集合中,各個輸入資料對於揭露程式中 的錯誤都是等效的 3....
軟體測試用例設計方法
1.等價類劃分法 等價類是指某個輸入域的子集合,該子集合中對於揭示程式錯誤是等效的。某個等價類的代表值與該等價類的其他值對於測試來說是等價的 因此可以把全部的輸入資料劃分成若干的等價類,在每乙個等價類中取乙個資料來測試,這樣就能以較少的具有代表性的資料進行測試 有效等價類 是指對於程式的規格說明來說...