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

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

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

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

    從單元測試NUnit中理解.NET自定義屬性的應用[2]

    發布: 2009-8-13 11:05 | 作者: 不詳 | 來源: 領測軟件測試網采編 | 查看: 70次 | 進入軟件測試論壇討論

    領測軟件測試網

    從單元測試NUnit中理解.NET自定義屬性的應用[2]   單元測試工具

    關鍵字:.NET NUnit

      自定義屬性可以用于對程序集中的元素進行標記和描述,并被編譯到.NET程序集中,成為其元數據的一部分。而從屬性和屬性值的讀取就是對.NET程序集元數據的讀取,這會用到反射機制。具體如何編寫自定義屬性和如何讀取屬性的例子在MSDN中有很多,不再冗述了。

      自定義屬性可以用于對程序集中的元素進行標記和描述,并被編譯到.NET程序集中,成為其元數據的一部分。而從屬性和屬性值的讀取就是對.NET程序集元數據的讀取,這會用到反射機制。具體如何編寫自定義屬性和如何讀取屬性的例子在MSDN中有很多,不再冗述了。

      3.屬性的應用

      屬性的以上的特性往往在設計一些框架時很有用:利用反射機制,作為屬性的元數據可以反過來在運行期影響代碼的運行配置項,或者為特殊的操作方法作以屬性作標記,以便在運行時做特殊處理。屬性的另一個很有誘惑力的應用是,可以用于構建管理項目程序集的工具:屬性表現為某種注釋,而注釋內容可以在編譯后從程序集中讀取出來,從而可以通過屬性內容的注釋和讀取來實現對程序集中各類型、方法的管理了。

      3.1 NUnit中的屬性應用

      先看看屬性在框架設計中的應用吧!最典型的例子就是NUnit。在NUnit的框架設計中將自定義屬性的特性、以及.NET的反射機制發揮得淋漓盡致。以一個簡化了的測試案例(TestCase)為例:在測試時,NUnit需要讓其中3種不同的函數依次運行如下:

      首先前運行測試前的環境準備函數;然后是0~n個測試函數;最后是測試環境清理函數。熟悉NUnit的開發者都知道,在NUnit的TestCase中分別使用[SetUp]、[Test]、[TearDown]屬性來進行標記。如下例:

      //一個NUnit測試程序集中代碼

      [SetUp]

      public void Init()

      //…

      [TearDown]

      public void Destroy()

      //…

      [Test]

      public void TestXXX()

      //…

      NUnit框架在運行時要從待測試程序集中讀取出上述函數,并且要保證上述3種不同的函數以正確的先后順序被依次調用。NUnit是這樣實現的:

      首先是開發了一套屬性,用來標記測試案例(TestCase)中各種函數,如:[SetUp]、[Test]、[TearDown]。(NUnit的屬性標記并不止用來標記程序集中的函數,但限于篇幅,這里只在先前作的簡化環境中討論)

    延伸閱讀

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

    TAG: net NET Net nunit NUnit Nunit NUNIT 單元 定義 屬性


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