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

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

  • <strong id="5koa6"></strong>
  • 談談關于測試覆蓋

    發表于:2008-09-01來源:作者:點擊數: 標簽:
    軟件測試 覆蓋包括分支覆蓋,語句覆蓋以及條件覆蓋,這是 白盒測試 中一個很基本的測試概念,但是最近和幾位搞了多年測試的朋友談及此事,大家都搞不大清楚。下面我通過一個例子來深入探討一下這個問題: 我們首先來看一下這幾些測試覆蓋的定義: 定義一、語
    軟件測試覆蓋包括分支覆蓋,語句覆蓋以及條件覆蓋,這是白盒測試中一個很基本的測試概念,但是最近和幾位搞了多年測試的朋友談及此事,大家都搞不大清楚。下面我通過一個例子來深入探討一下這個問題:

    我們首先來看一下這幾些測試覆蓋的定義:

    定義一、語句覆蓋:它要求被測程序的每一可執行語句在測試中盡可能都檢驗過;

    定義二、分支覆蓋:要求程序中所有判定的分支盡可能得到檢驗;

    定義三、條件覆蓋:當判定式中含有多個條件時,要求每個條件的取值均得到檢驗;

        從這些定義我們可以很容易理解到語句覆蓋是把程序中的所有的語句都給覆蓋到;分支覆蓋是把程序中每個分支都給覆蓋到;條件覆蓋是把判斷條件中所有的條件都給覆蓋到。

    下面我們通過一個簡單的例子來描述一下

      0:

      1:if ((a<150)||(b<200)){

      2: for (i=a;i<100;i++)

      3: {

      4: println(“A”);}

      5:}else{

      6:println (“B”);

      7:}

    分支覆蓋:

    1)在0處設置a=120,b 任意

    將執行1,2,5

    2)在0處設置a=200,b=400

    將執行1,5,6,7

    這里所有的分支都走到,也就是說要達到分支覆蓋率100%,要設計2組測試用例

    a b
    120 任意
    200 400

    語句覆蓋:

    1)在0處設置a=40,b 任意

    將執行1,2,3,4,5

    2)在0處設置a=200,b=400

    將執行1,5,6,7

    這里所有的語句都走到了,也就是說要達到語句覆蓋率100%,要設計2組測試用例

    a b
    40 任意
    200 400

    而在分支覆蓋中語句3,4沒有走到

    條件覆蓋:

    由于第一個條件是if ((a<150)||(b<200)) 所以需要設計測試用例

    a b 備注
    40 50 全部滿足
    160 150 a不滿足,b滿足
    40 250 a滿足,b不滿足
    150 250 a,b都不滿足

    條件覆蓋只要求把所有的條件都覆蓋就可以了。

    這樣一來我們就把這幾個概念搞得很清楚了。

        順便我在這里想說一句心里話,我們現在的不管是書籍還是網站上的文章都太傾向于理論了,而到實際運用上來就說不清楚了,我希望能夠有更多又講理論又講實踐的文章和書籍能夠出現。

    原文轉自: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>