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

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

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

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

    Visual Studio 2008單元測試實踐

    發布: 2009-4-10 16:47 | 作者: 不詳 | 來源: 測試時代采編 | 查看: 77次 | 進入軟件測試論壇討論

    領測軟件測試網 單元測試是在軟件開發過程中要進行的最低級別的測試活動,在單元測試活動中,軟件的獨立單元將在與程序的其他部分相隔離的情況下進行測試。

        在一種傳統的結構化編程語言中,比如C,要進行測試的單元一般是函數或子過程。在象C++這樣的面向對象的語言中, 要進行測試的基本單元是類。對Ada語言來說,開發人員可以選擇是在獨立的過程和函數,還是在Ada包的級別上進行單元測試。單元測試的原則同樣被擴展到第四代語言(4GL)的開發中,在這里基本單元被典型地劃分為一個菜單或顯示界面。

        單元測試不僅僅是作為無錯編碼的一種輔助手段在一次性的開發過程中使用,單元測試必須是可重復的,無論是在軟件修改,或是移植到新的運行環境的過程中。因此,所有的測試都必須在整個軟件系統的生命周期中進行維護。

        Visual Studio 2008 單元測試功能介紹

    一、測試代碼與被測代碼分離成獨立的兩個項目

        單元測試中,測試的代碼不能對被測試的代碼施加影響。如果將測試代碼寫入被測試的代碼中,測試完成后再刪除的話,測試的正確性將得不到保證。因此,在Visual Studio 2008種提供了一種“Test Project”的項目,測試代碼寫在Test Project中,并且測試工程可以進行重復使用。

    二、測試代碼的自動生成

        書寫測試代碼是一件很煩瑣的事情,這些代碼沒有像程序代碼一樣具有“創造性”,因此該部分代碼可以進行自動化生成。Visual Studio 2008就提供了一個自動生成測試代碼的測試框架。利用Visual Studio 2008自動生成的代碼,只需要很少的改動就可以完成整個測試程序。

    三、測試管理

        Visual Studio 2008提供了測試列表來進行測試工作的管理工作,我們需要一個反映目前測試狀況的工具,那些測試通過了,那些沒有通過,應該提供一個列表來為我們改進測試手段,進行更全面的測試提供指導。
     
        利用Visual Studio 2008來進行單元測試

        假設我們有一個類BankAccount,該類定義了一個銀行的賬戶,私有屬性_currentBalance是銀行儲戶的賬戶金額,depositMoney是存款方法,對帳戶增加一筆資金,makePayment是支付方法,對賬戶減少一筆資金。代碼如下:

     

    using System;

    using
     System.Collections.Generic;

    using
     System.Linq;

    using
     System.Text;

     

    namespace
     BankAccountDemo.Business

    {

        
    class
     BankAccount

        
    {

            
    private float
     _currentBalance;

       
    public float
     CurrentBalance

            
    {

                
    get return _currentBalance; }


                
    set { _currentBalance = value; }

            }


            
    public BankAccount(float initialBalance)

            
    {

                
    this._currentBalance =
     initialBalance;

            }


            
    public void depositMoney(float depositAmount)

            
    {

                
    this._currentBalance +=
     depositAmount;

            }


            
    public void makePayment(float paymentAmount)

            
    {

                
    this._currentBalance -=
     paymentAmount;

            }


     

        }


    }


    MILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
        要對
    BankAccount類進行單元測試,只需要在BankAccount的定義處鼠標右鍵,在菜單中選擇“Create Unit Tests”即可進入測試項目的創建工作。如下圖所示:

     



       
    在彈出的創建單元測試的對話框中,對需要創建測試的方法和屬性進行選擇,然后點擊“OK
    ”按鈕,如圖所示:

       
    緊接著在出現的文本框中輸入測試項目的名稱“BankAccountDemo.Business.Tests”,點擊確定后,測試項目被創建。在這里“BankAccountDemo.Business.”只是用于更好的對命名空間進行規劃,完全可以直接使用“BankAccountDemoTest
    ”來作為測試項目的名字。
    生成的測試代碼如下,為了緊湊的表現代碼,將注釋代碼作了刪除。

     

    這個時候的代碼并不能開始測試,而需要我們按照測試用例的要求將測試用例的數據加入到測試方法中,并進行結果的比較,修改后的depositMoneyTest方法如下:

     

    [TestMethod()]

    public void depositMoneyTest()

    {

        float initialBalance = 0F; // TODO: Initialize to an appropriate value

        BankAccount target = new BankAccount(initialBalance); // TODO: Initialize to an appropriate value

        float depositAmount = 100F; // TODO: Initialize to an appropriate value

        target.depositMoney(depositAmount);

        Assert.AreEqual(initialBalance + depositAmount, target.CurrentBalance, "Deposit Test: Deposit not applied correctly");

     }


         
    鼠標右鍵在depositMoneyTest方法內任意位置單擊,在彈出的菜單中選擇“Run Tests”,即可以對該方法進行測試。在“Test Results”窗口中顯示測試的結果,如下圖所示:

     

     

     


        可以看出,
    Visual Studio 2008給我們提供了一個功能強大,操作簡單的單元測試功能。利用該功能,程序員在編寫代碼后,可以馬上對所編寫的類進行單元測試,通過了程序員自行組織的單元測試后再將代碼交給測試人員進行進一步測試。

       

    延伸閱讀

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

    TAG: studio Studio visual Visual 單元 實踐

    21/212>

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(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>