<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    qileilove

    blog已經轉移至github,大家請訪問 http://qaseven.github.io/

    如何有效減少測試用例數目

      在測試過程中,測試人員經常需要將測試對象的各種輸入參數進行組合之后進行測試。有時候,將各種輸入參數進行組合,得到的測試用例數目將是非常龐大的。由于測試時間和成本的限制,無法對測試對象輸入值的所有組合進行測試。下面是某個網站測試的要求:

      ------------案例描述:開始-------------

      某網站需要支持

      ● 不同的瀏覽器:IE5.0、IE5.5、IE6.0、Netscape6.0、Netscape6.1、Netscape7.0、Mozilla1.1和Opera7;

      ● 不同的插件:RealPlayer、MediaPlayer或者沒有任何插件None;

      ● 不同的客戶端操作系統:Windows95、Windows98、WindowsME、、WindowsNT、Windows2000和WindowsXP;

      ● 不同的Web服務器軟件:IIS、Apache和WebLogic;

      ● 不同的服務器端操作系統:WindowsNT、Windows2000和Linux

      這種情況下,需要針對不同的組合進行測試:

      ● 8種瀏覽器

      ● 3種插件

      ● 6種客戶端操作系統

      ● 3種Web服務器軟件

      ● 3種服務器端操作系統

      如果考慮所有參數不同取值的組合,那么需要設計和執行的測試用例的數目是1296(8 x 3 x 6 x 3 x 3 = 1296)。

      ------------案例描述:結束-------------

      在軟件測試過程中,這種類型的組合是非常普遍的。每種情形都可能有龐大的組合需要進行測試,假如不對它們進行測試,可能會存在較大的風險;而如果對所有組合進行測試,測試時間和資源又不允許。測試人員在面對這種情況的時候,可以采用以下幾種常用的策略:

      ● 嘗試測試所有輸入的組合,延期項目,導致的后果可能是失去產品的市場。

      ● 選擇一些容易設計和執行的測試用例,而忽略其是否能夠提供產品質量的信息。

      ● 羅列所有的組合,并隨機選擇其中的子集進行測試。

      ● 采取特殊的測試技術,選擇能發現大部分缺陷的子集進行測試。

       如果采用最后一個策略,那么使用結對測試技術是一個很好的選擇。采用結對測試的技術,測試并不針對輸入值的所有組合進行測試,而只是針對所有輸入值的兩 兩組合。結對測試技術可以顯著地減少測試用例的數目,同時保證較高的測試質量。下面是應用結對測試技術減少測試用例數目的例子:

      ● 假如軟件系統有四個不同的輸入參數,每個參數有3個不同的輸入值,得到的完全組合數目是34即81。假如采用結對測試的技術,只需要9個測試用例即可覆蓋所有參數的兩兩組合。

      ● 假如軟件系統有13個不同的輸入參數,每個參數有3個不同的輸入值,得到的完全組合數目是313即1594323。假如采用結對測試的技術,只需要15個測試用例即可覆蓋所有參數的兩兩組合。

      ● 假如軟件系統有20個不同的輸入參數,每個參數有10個不同的輸入值,得到的完全組合數目是1020。假如采用結對測試的技術,只需要180個測試用例即可覆蓋所有參數的兩兩組合。

      結對測試技術能夠發現所有的單模式失效(Single-mode Fault)和雙模式失效(Double-mode Fault)。但是,結對測試并不一定適合于發現測試對象中的多模式失效(Multimode Fault)。

      ● 單模式失效:失效是由單個參數引起的,只要針對所有獨立參數進行測試,就能夠發現該失效。

      ● 雙模式缺陷:失效是由兩個參數共同引起的,必須針對所有參數的兩兩組合進行測試,才能夠確保發現此類缺陷。

      ● 多模式缺陷:失效是由三個或三個以上參數共同引起的,采用結對測試技術也可能發現多模式缺陷,但是不能保證測試的充分性。

      下面的幾個數據可以說明結對測試技術的有效性:

      ● 根據AT&T在對其基于局域網的郵件系統進行的測試中,應用結對測試技術得到的1000條測試用例比其原有的1500條測試用例多發現了20%的缺陷,而測試工作量卻減少了50%。

      ● National Institute of Standards and Technology在一項對醫療設備測試所進行的15年追蹤中發現,有98%的軟件缺陷可以通過結對測試技術發現。

      ● 根據對Mozilla網頁瀏覽器的缺陷分析顯示,76%的缺陷可以通過結對測試技術發現。

      具體的結對測試,可以通過不同的測試技術來得到,包括正交矩陣(Orthogonal Arrays)的方法、James Bach提供的Allpairs方法,也可以通過分類樹方法。表1得到的測試用例是通過Allpairs方法實現的,詳細的內容以及其他測試技術的實現方 法,可以參考《軟件測試設計》原著。

    圖1 使用Allpairs得到的測試數據

      假如測試數據列表中的某個參數的取值以~開頭,那么說明該參數取值已經有兩兩組合了。以~開頭的參數取值,可以用該 參數的任何其他取值來代替,而不會影響其兩兩組合的覆蓋率。因此,可以將以~開頭的參數取值,用更關鍵的或者經常使用的參數值來代替。同時,使用 Allpairs得到的測試數據中,還羅列了所有的兩兩組合,并且統計了每個兩兩組合出現的次數,以及每個測試用例所包含的兩兩組合數。

      從上面的結果可以看到:通過采用合適的測試技術,測試用例數目原來需要1296個,而目前只需要48個進行覆蓋,測 試用例數目減少了96%。前面已經提到了,結對測試可以發現所有的單失效模式和雙失效模式的缺陷,而實踐過程中,大部分的失效是單失效模式和雙失效模式, 多失效模式占的比例很少。因此,通過采用合適的結對測試,可以大大降低測試用例數目,減少測試工作量,同時可以實現較好的測試覆蓋率,保證測試質量。


    posted on 2011-10-14 10:33 順其自然EVO 閱讀(302) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄

    <2011年10月>
    2526272829301
    2345678
    9101112131415
    16171819202122
    23242526272829
    303112345

    導航

    統計

    常用鏈接

    留言簿(55)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 特黄特色的大片观看免费视频| 亚洲精品国产品国语在线| 亚洲国产精品自在线一区二区 | 麻豆精品成人免费国产片| 亚洲午夜av影院| 十八禁的黄污污免费网站| 俄罗斯极品美女毛片免费播放| 亚洲日本中文字幕天天更新| 成人毛片视频免费网站观看| 久久夜色精品国产噜噜亚洲a| 日韩亚洲国产高清免费视频| 亚洲制服丝袜第一页| 67194成是人免费无码| 亚洲午夜无码久久久久小说| 免费无码一区二区三区蜜桃大 | 毛片无码免费无码播放| 国产亚洲人成网站在线观看| 国产精品国产午夜免费福利看 | 亚洲AV日韩AV永久无码绿巨人| 国产在线观看免费av站| 亚洲精品无码成人AAA片| 国产免费一区二区视频| 亚洲精品日韩专区silk| 一级成人a做片免费| 亚洲成a人片在线观看无码| 污污网站免费观看| 亚洲一区二区三区免费在线观看| 成人超污免费网站在线看| 男人免费视频一区二区在线观看 | 91在线亚洲综合在线| 亚洲AV无码专区日韩| 精品亚洲永久免费精品| 国产成人精品日本亚洲18图| 午夜免费福利网站| 中文字幕免费观看全部电影| 亚洲欧洲自拍拍偷综合| 亚洲va中文字幕无码| 91青青青国产在观免费影视| 久久久久亚洲国产| 精品亚洲视频在线观看| 国拍在线精品视频免费观看|