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

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

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    如何編寫軟件單元測試用例(白盒測試)

    發布: 2010-12-16 10:43 | 作者: 不詳 | 來源: 領測測試網采編 | 查看: 425次 | 進入軟件測試論壇討論

    領測軟件測試網

      還有嗎??

      5 C,D,C,I,A,C,E,J(4,6,13,19,22,4,6,8,24)算嗎?

      不算,為什么?因為上面的4條路徑已經包括了所有的邊。第5條路徑已經不包含沒有用過的邊了。所有的路徑都遍歷過了。

      好了,現在我們有了4條基本獨立路徑根據獨立路徑我們可以設計測試用例。

      1 B(4,24)

      輸入數據:i_flag=0,或者是i_flag<0的某一個值。

      預期結果:i_temp=0.

      2 C,E,J(4,6,8,24)

      輸入數據: i_count =1;i_flag=0

      預期結果:i_temp=101.

      3 C,D,F,H,A,B(4,6,13,15,22,4,24)

      輸入數據: i_count =1;i_flag=1

      預期結果:i_temp=10.

      4 C,D,G,I,A,B(4,6,13,19,22,4,24)

      輸入數據: i_count =1;i_flag=2

      預期結果:i_temp=20.

      這里的輸入數據是有路徑和程序推論出來的。而要注意的是預期結果是從函數說明中導出,不能根據程序結構中導出。

      為什么這么說?

      讓我們看程序中的第3行。

      int i_temp=0;假如開發人員一不小心寫錯了,變成了int i_temp=1;根據程序導出的預期結果就會是一個錯誤的值,但是單元測試不出來問題。

      那單元測試就失去了意義。

      有人也許會問這么簡單的函數就有4個測試用例,如果還復雜一些的怎么辦?上面的測試用例還可以簡化嗎?答案是可以。

      我們來看 路徑 1 B(4,24)和 4 C,D,G,I,A,B(4,6,13,19,22,4,24),路徑1是路徑4的真子集, 所以1是可以不必要的。上圖的圈復雜度是4。這個結果對我們來說有什么意義呢?它表示我們只要最多4個測試用例就可以達到基本路徑覆蓋。所以說圈復雜度標示是最多的測試用例個數,不是一定要4個測試用例才可以。不過有一點要申明的是測試用例越簡化代表你的測試越少,這樣程序的安全性就越低了。

      四、完成測試

      接下來根據測試用例使用工具測試NUNIT,VS2005都可以。

      接下來根據測試結果編寫測試報告,測試人,時間,結果,用例,是否通過,格式網上一大把,每個公司的格式也不一樣就不說了。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    55/5<12345

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品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>