3.7盒測試方法之-業務路徑覆蓋法


一、場景法

  場景法就是模擬用戶操作軟件時的場景,主要用於測試系統的業務流程。當拿到一個測試任務時,我們並不是先關注某個控件的邊界值、等價類是否滿足要求,而是先要關注它的主要功能和業務流程是否正確實現,這就需要使用場景法來完成測試。當業務流程測試沒有問題,也就是該軟件的主要功能沒有問題時,我們再重點從邊界值、等價類等方面對控件進行測試。

  在冒煙測試時也主要采用場景法進行測試進行測試。

1.1 場景法中重要的概念

1)基本流:按照正確的業務流程來實現的一條操作路(也就是模擬正確的操作流程);

2)備選流導致程序出現錯誤的操作流程(So,模擬錯誤的操作流程)。

給大家截了個圖,可以參考一下:

 

1.2 場景法的基本設計步驟

1)根據說明,描述出程序的基本流及各項備選流;

2)根據基本流和各項備選流生成不同的場景;

3)對每一個場景生成相應的測試用例。

 

案例:

使用場景法設計ATM機取款功能的測試用例

步驟一:根據說明,描述出程序的基本流及各項備選流;

 

步驟二:根據基本流和各項備選流生成不同的場景

 

步驟三:對每一個場景生成相應的測試用例,例如:

 

大家可以試着編寫更好的測試用例,在之后,我也會相繼給大家寫一些或上傳比較好的用例,我認為還是可以的\(^o^)/~

 

 

二、狀態圖

 

給大家展示的狀態圖轉換法案例:貨幣轉換器

2.1.1案例演示

  輸入人民幣金額,選擇要轉換的國家,再輸入匯率,即可計算所輸入的人民幣等價的貨幣金額。

用戶的操作可能是:

 輸入人民幣金額->選擇國家->輸入匯率->點擊“計算”按鈕;

 選擇國家 ->輸入匯率->輸入人民幣金額->點擊“計算”按鈕;

 輸入人民幣金額->選擇國家->點擊“清除”按鈕。。。

2.1.2兩個重要的概念

1、軟件的狀態

   軟件運行到某個時刻所處的情況

例如:

(1)剛剛啟動處於“空閑”狀態;

(2)輸入人民幣金額以后變為“人民幣金額已輸入”狀態;

(3)所有輸入正確完成后,點擊“計算”按鈕,程序應該處於“顯示等價金額”狀態;

(4)點擊“清除”按鈕后處於清除狀態。

2、輸入的動作

   用戶向軟件進行的操作

例如:

(1)輸入人民幣金額

(2)點擊某個國家單選按鈕

(3)點擊“計算”按鈕

2.2 狀態轉換圖法

  找出軟件所有的狀態以及導致這些狀態發生變化的所有輸入動作,進而用圖形的方法把相關聯的輸入動作和狀態聯系在一起,真實模擬用戶的操、作順序流程。

2.2.1 狀態轉換圖法的核心

1)軟件所有的狀態

2)導致狀態發生變化的所有輸入動作

2.2.2 使用狀態轉換圖法的步驟

1)找出程序的所有輸入動作,

並進行編號列出用戶能夠向軟件輸入的每一個獨立的動作,並進行編號;

2)找出程序的所有狀態,

可以認為用戶每輸入一個動作就會使程序的狀態發生變化,如果不能決定是否為一個獨立狀態,可以先假設“是”

3)找出什么動作會導致什么狀態發生,畫出狀態轉換圖(一般情況下這是一個反復的過程);

4)把相關聯的動作和狀態聯系起來,設計測試用例。

 

例子:

使用狀態轉換圖法分析貨幣轉換器程序

 

步驟一:找出程序的所有輸入動作,並進行編號;

步驟二:找出程序的所有狀態

    可以認為用戶每輸入一個動作就會使程序的狀態發生變化

1.系統啟動后處於空閑狀態

2.人民幣金額已輸入狀態

3.國家已選擇狀態

4.國家已選擇、匯率已輸入狀態

5.人民幣金額已輸入、國家已選擇狀態

6.所有輸入已完成狀態

7.顯示等價金額狀態

8.錯誤提示狀態

   (1)人民幣未輸入或輸入錯誤;

   (2)國家未選擇錯誤;

   (3)匯率未輸入或輸入錯誤。

9.清除狀態

   把清除狀態看做空閑狀態也可以

10.退出狀態

步驟三:找出什么動作會導致什么狀態發生,畫出狀態轉換圖(一般情況下這是一個反復的過程)

1輪、將所有可能的輸入單獨加載到被測系統的空閑狀態,得到新的狀態

 

2輪、將所有可能的輸入單獨加載到上一步得到的每一個狀態中,再得到新的狀態。

3輪、1.先找到主要動作和狀態

3輪、2.先找到次要動作和狀態

4輪、1.先找主要動作和狀態

4輪、2.先找次要動作和狀態

5

步驟四:根據狀態轉換圖,把相關聯的動作和狀態聯系起來,設計測試用例

(1)先寫主要操作(功能比較重要或用戶操作比較頻繁的動作),后寫次要操作。

(2)為了減少測試用例數量,一條測試用例最好沿着狀態轉換圖的一條路徑編寫完。

以此類推,寫出所有測試用例。。。

 

最后給大家總結了狀態轉換圖法小知識點:

(1)每種狀態至少訪問一次。無論用什么方法,每一種狀態都必須測試。

(2)測試看起來最常見最普遍的狀態轉換。可以根據產品說明書,通過與客戶、開發人員溝通,了解哪些操作更常用、更重要。

(3)測試狀態之間最不常用的分支。這些分支是最容易被產品設計者和程序員忽視的。

(4)測試所有錯誤狀態及其返回值。錯誤沒有得到正確處理、錯誤提示信息不正確等情況是常有的。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM