• <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-9-09 11:09 | 作者: 不詳 | 來源: 領測軟件測試網 | 查看: 52次 | 進入軟件測試論壇討論

    領測軟件測試網

    軟件測試單元測試用例概述

    測試的目的是檢查程序的行為是否符合設計規格,程序的行為就是某種輸入時會產生什么輸出,因此,一個典型的測試用例完成以下工作:設定輸入數據、執行程序、驗證輸出是否符合預期。

    函數的輸入數據一般包括:
    A、參數;
    B、成員變量,只考慮函數需要讀取的成員變量;
    C、全局變量,只考慮函數需要讀取的全局變量;
    以上三項,當涉及到復雜數據類型時,只考慮函數需要讀取的域,例如,一個結構對象,有十個域,而函數只讀取其中一個域,則不必考慮其他九個域。
    D、其他數據,如函數需要讀取文件或數據庫中的數據,則要先在文件或數據庫中設置好這些數據。

            顯然,所有可能輸入都進行測試,既不可能也無意義,我們應該用一定的規則選擇有代表性的數據作為輸入。輸入可分為三大類:正常輸入,邊界輸入,非法輸入,每大類還可再分為若干小類,劃分小類的依據是:同一小類中每個數據都具有等價的測試效果,也就是說,小類中取任取一個數據作為輸入,如果測試通過,可以肯定同小類的其他輸入也可以測試通過,這就是平常說的“等價類法”。

    正常輸入
    例如字符串的Trim函數,功能是將字符串前后的空格去除,那么正常的輸入可以有四類:
    前面有空格;
    后面有空格;
    前后均有空格;
    前后均無空格。

    邊界輸入
           上例中空字符串可以看作是邊界輸入。
    再如一個表示年齡的參數,它的有效范圍是0-100,那么邊界輸入有兩個:0和100。

    非正常輸入
           垃圾數據或使代碼不能完成正常功能的數據,如一個文件操作的函數,非正常輸入有這么幾類:
    文件不存在;
    目錄不存在;
    文件正在被其他程序打開;

    [NextPage]

    權限錯誤。

    預期輸出
           一個完整的測試用例應該有預期輸出,預期輸出就是程序運行后的預期結果,通常表現在對某些數據的修改,即預期輸出要自動判斷程序所改寫的數據的結果值是否符合預期。程序可能修改的數據包括:
    A、返回值;
    B、輸出參數;
    C、成員變量,只考慮函數所改寫的成員變量;
    D、全局變量,只考慮函數所改寫的全局變量;
    以上四項,當涉及到復雜數據類型時,只考慮函數所改寫的域,例如,一個結構對象,有十個域,而函數只改寫了其中一個域,則不必考慮其他九個域。
    E、其他數據,如函數改寫文件或數據庫中的數據,也是一種輸出,不過通常難于自動判斷是否符合預期,可用人工查看來代替。

    延伸閱讀

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

    TAG: 單元 概述 軟件測試


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