日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

(转)测试用例的设计方法(全)之二 错误推断、因果图

發布時間:2025/5/22 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (转)测试用例的设计方法(全)之二 错误推断、因果图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

測試用例的設計方法(全)之二

(3)錯誤推測方法

.??? 方法簡介

1.???????? 定義:基于經驗和直覺推測程序中所有可能存在的各種錯誤, 從而有針對性的設計測試用例的方法。

2.???????? 錯誤推測方法的基本思想:

列舉出程序中所有可能有的錯誤和容易發生錯誤的特殊情況,根據他們選擇測試用例。

1)??????? 例如, 輸入數據和輸出數據為0的情況;輸入表格為空格或輸入表格只有一行。 這些都是容易發生錯誤的情況。可選擇這些情況下的例子作為測試用例。

2)??????? 例如,前面例子中成績報告的程序,采用錯誤推測法還可補充設計一些測試用例:

I.????????? 程序是否把空格作為回答

II.?????? 在回答記錄中混有標準答案記錄

III.???? 除了標題記錄外,還有一些的記錄最后一個字符即不是2也不是3

IV.???? 有兩個學生的學號相同

V.??????? 試題數是負數。

3)??? 再如,測試一個對線性表(比如數組)進行排序的程序,可推測列出以下幾項需要特別測試的情況:

I.????????? 輸入的線性表為空表;

II.?????? 表中只含有一個元素;

III.???? 輸入表中所有元素已排好序;

IV.???? 輸入表已按逆序排好;

V.??????? 輸入表中部分或全部元素相同。

.??? 實戰演習

??? 暫無

?

?

因(4)因果圖方法

.??? 方法簡介

1.定義:是一種利用圖解法分析輸入的各種組合情況,從而設計測試用例的方法,它適合于檢查程序輸入條件的各種組合情況。

2.因果圖法產生的背景:

等價類劃分法和邊界值分析方法都是著重考慮輸入條件,但沒有考慮輸入條件的各種組合、輸入條件之間的相互制約關系。這樣雖然各種輸入條件可能出錯的情況已經測試到了,但多個輸入條件組合起來可能出錯的情況卻被忽視了。

如果在測試時必須考慮輸入條件的各種組合,則可能的組合數目將是天文數字,因此必須考慮采用一種適合于描述多種條件的組合、相應產生多個動作的形式來進行測試用例的設計,這就需要利用因果圖(邏輯模型)。

3.因因果圖介紹

1)?4種符號分別表示了規格說明中向4種因果關系。

2)?因果圖中使用了簡單的邏輯符號,以直線聯接左右結點。左結點表示輸入狀態(或稱原因),右結點表示輸出狀態(或稱結果)。

3)?Ci表示原因,通常置于圖的左部;ei表示結果,通常在圖的右部。Ciei均可取值010表示某狀態不出現,1表示某狀態出現。

4. 因果圖概念

1)??? 關系

恒等:若ci1,則ei也是1;否則ei0

非:若ci1,則ei0;否則ei1

或:若c1c2c31,則ei1;否則ei0可有任意個輸入。

與:若c1c2都是1,則ei1;否則ei0也可有任意個輸入。

2)??? 約束

輸入狀態相互之間還可能存在某些依賴關系,稱為約束。例如, 某些輸入條件本身不可能同時出現。輸出狀態之間也往往存在約束。在因果圖中,用特定的符號標明這些約束。

A.輸入條件的約束有以下4類:

?? E約束(異):ab中至多有一個可能為1,即ab不能同時為1

?? I約束(或):abc中至少有一個必須是1,即 ab c不能同時為0

?? O約束(唯一);ab必須有一個,且僅有1個為1

?? R約束(要求):a1時,b必須是1,即不可能a1b0

B.輸出條件約束類型

???輸出條件的約束只有M約束(強制):若結果a1,則結果b強制為0

5.?采用因果圖法設計測試用例的步驟:

1)分析軟件規格說明描述中, 那些是原因(即輸入條件或輸入條件的等價類),那些是結果(即輸出條件), 并給每個原因和結果賦予一個標識符。

2)分析軟件規格說明描述中的語義,找出原因與結果之間, 原因與原因之間對應的關系,根據這些關系,畫出因果圖。

3)由于語法或環境限制, 有些原因與原因之間,原因與結果之間的組合情況不可能出現,為表明這些特殊情況, 在因果圖上用一些記號表明約束或限制條件。

4)把因果圖轉換為判定表。

5)把判定表的每一列拿出來作為依據,設計測試用例。

.?實戰演習

1.?某軟件規格說明書包含這樣的要求:第一列字符必須是AB,第二列字符必須是一個數字,在此情況下進行文件的修改,但如果第一列字符不正確,則給出信息L;如果第二列字符不是數字,則給出信息M

解答:

1)?根據題意,原因和結果如下:

???????原因:

????????? 1——第一列字符是A

????????? 2——第一列字符是B

????????? 3——第二列字符是一數字。

?????? 結果:

????????? 21——修改文件;

????????? 22 ——給出信息L

????????? 23——給出信息M

2)?其對應的因果圖如下:

11為中間節點;考慮到原因1和原因2不可能同時為1,因此在因果圖上施加E約束。

3)根據因果圖建立判定表。

?

表中8種情況的左面兩列情況中,原因和原因同時為1,這是不可能出現的,故應排除這兩種情況。表的最下一欄給出了6種情況的測試用例,這是我們所需要的數據。

2.有一個處理單價為5角錢的飲料的自動售貨機軟件測試用例的設計。其規格說明如下:若投入5角錢或1元錢的硬幣,押下〖橙汁〗或〖啤酒〗的按鈕,則相應的飲料就送出來。若售貨機沒有零錢找,則一個顯示〖零錢找完〗的紅燈亮,這時在投入1元硬幣并押下按鈕后,飲料不送出來而且1元硬幣也退出來;若有零錢找,則顯示〖零錢找完〗的紅燈滅,在送出飲料的同時退還5角硬幣。

1)?分析這一段說明,列出原因和結果

原因:

1.售貨機有零錢找

2.投入1元硬幣

3.投入5角硬幣

4.押下橙汁按鈕

5.押下啤酒按鈕

結果:

21.售貨機〖零錢找完〗燈亮???

22.退還1元硬幣

23.退還5角硬幣 ????????????

24.送出橙汁飲料

25.送出啤酒飲料

2)畫出因果圖,如圖所示。所有原因結點列在左邊,所有結果結點列在右邊。建立中間結點,表示處理的中間狀態。中間結點:

11. 投入1元硬幣且押下飲料按鈕

?????? ???????? 12. 押下〖橙汁〗或〖啤酒〗的按鈕

?????? ???????? 13. 應當找5角零錢并且售貨機有零錢找

?????? ???????? 14. 錢已付清

?

3)轉換成判定表:

?

4)?在判定表中,陰影部分表示因違反約束條件的不可能出現的情況,刪去。第16列與第32列因什么動作也沒做,也刪去。最后可根據剩下的16列作為確定測試用例的依據。

轉載于:https://www.cnblogs.com/dadan_beijing2007/archive/2009/04/22/1441321.html

總結

以上是生活随笔為你收集整理的(转)测试用例的设计方法(全)之二 错误推断、因果图的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。