• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 組合軟件測試模型方法

    發表于:2009-07-02來源:作者:點擊數: 標簽:軟件測試模型
    1基本信息 好的測試都是基于模型的。 由于軟件輸入空間的無限性,使得 測試人員 不可能遍歷軟件的所有輸入。其實,遍歷軟件的所有輸入一般也是沒有必要的。優秀的測試設計,往往能夠從繁多的 測試用例 中挑選出有效的用例,用盡可能少的測試輸入,覆蓋盡可能
    1 基本信息

            好的測試都是基于模型的。

            由于軟件輸入空間的無限性,使得測試人員不可能遍歷軟件的所有輸入。其實,遍歷軟件的所有輸入一般也是沒有必要的。優秀的測試設計,往往能夠從繁多的測試用例中挑選出有效的用例,用盡可能少的測試輸入,覆蓋盡可能多的軟件需求,這離不開合適的測試模型的支持。
    所謂測試模型(Test Model),是測試和測試對象的基本特征、基本關系的抽象。它是測試理論家們根據大量的實際測試應用總結出來的,能夠代表某一類應用的內在規律,并對應于適合此類應用的一組測試框架性的東西。

    2 組合測試模型

            一種相對簡單,并且應用十分廣泛的模型是組合模型,具有如下特點:

            1)、輸出是由輸入變量之間的邏輯關系決定的。
            2)、輸出結果不依賴于變量的先后順序。這一特點是我們理解組合模型的關鍵。

            對于符合組合模型的輸入而言,測試用例設計時要注意:

            1)、考慮輸入變量的不同取值以及這些取值之間的不同組合。
            2)、從應用系統中抽象出正確的邏輯表達式,不要遺漏任何一種邏輯組合關系。

            在組合模型中最常用的兩種測試技術分別為正交設計技術和組合覆蓋測試技術。

    2.1 正交設計技術介紹:

            正交實驗設計方法:依據Galois理論,從大量的(實驗)數據(測試例)中挑選適量的、有代表性的點(例),從而合理地安排實驗(測試)的一種科學實驗設計方法。

            采用正交設計法設計測試用例主要包括以下步驟:

            確定影響因素。這里的影響因素指對軟件運行結果有影響的軟件運行條件,一般情況下是指軟件的輸入以及其它軟件運行的環境。這些因素可以通過對軟件需求規格、軟件概要設計、軟件詳細設計等文檔分析而獲得。
            確定因素的取值范圍或集合。因素的取值范圍指軟件輸入的取值范圍或集合以及可用的硬件資源。同樣,要通過分析軟件需求規格等文檔獲取這些信息。
            確定每個因素的水平。根據因素的取值范圍或集合,采用等價類劃分、邊界值分析等軟件測試技術,在每個因素的取值范圍或集合里挑選出有效等價類、無效等價類、正好等于、剛剛大于或剛剛小于邊界值等有代表性的測試點。例如:對于用下拉框進行輸入的字段,下拉框的所有取值都構成了該因素的水平集合。
            選擇正交表。根據確定的因素和水平,選擇合適的正交表。如果沒有合適的正交表可用或需要的測試用例個數太多,則要對因素和水平進行調整。 [Page]
            設計測試用例。

    2.2 組合覆蓋測試技術介紹:

            組合覆蓋測試技術是一種設計測試用例的方法,它利用組合產生能夠覆蓋規定組合的測試用例。根據覆蓋程度的不同,可以分為單因素覆蓋、成對組合覆蓋、三三組合覆蓋等。這種方法力求用盡可能少的測試用例,覆蓋盡可能多的影響因素。

            下面重點討論成對組合覆蓋測試用例的生成方法。

            基本用例選擇方法:首先確定出1個基本測試用例,基本用例由每個因素中最重要的水平值組合而成。根據預先定義的標準,如最常用的、最簡單的、最小的、最可能使用的等找出最重要的水平值。

            成對組合(Pair-Wise),又稱兩兩組合、對對組合,它是將所有因素的水平按照兩兩組合的原則而產生的。成對組合覆蓋的概念是Mandl于1985年在測試Ada編譯程序時提出的。Cohen等人應用成對覆蓋測試技術對Unix中的“sort”命令進行了測試,測試結果:模塊覆蓋率93.5%,判斷覆蓋率為83%。由此可見,運用成對組合覆蓋技術設計出的測試用例具有經濟有效的特點。

            假設某功能有3個因素(或者叫輸入項),每個因素(輸入項)有2個不同的取值,分別為

            【A1,A2】、  【B1,B2】 、 【C1,C2】 

            引入成對組合的概念之后,我們可以用成對組合集合來表示通常的測試用例集。對于某個給定的測試用例,它能覆蓋一定數量的成對組合元素。例如:

            測試用例(A1,B1,C1)覆蓋了(A1,B1),(A1,C1),(B1,C1)3個成對組合元素。
            測試用例(A1,B1,C2)覆蓋了(A1,B1),(A1,C2),(B1,C2)3個成對組合元素。

            所謂測試設計,,就是設計出一組測試用例以依之對軟件進行測試;顯然,不同的測試用例集所覆蓋的成對組合元素數量是不同的。在同樣大小的測試用例集條件下,覆蓋的成對組合元素數量越多,表明該測試用例集的測試效果越好。因此,如何選擇測試用例集是一個值得研究的問題。對于上例,有8個成對組合元素需要覆蓋,如何從8個候選測試用例中挑選出最少的測試用例,達到100%的成對組合覆蓋,選擇方案如下:

            【A1,B1,C2】、【A1,B2,C1】、【A2,B1,C1】、【A2,B2,C2】

            通過上面的論述和舉例,相信大家已經對這兩種模型有了一定的認識,并對每種模型適合什么樣的測試需求也有了初步了解。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>