小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

VS2005對(duì)私有方法的單元進(jìn)行測(cè)試

 nicolh 2010-08-15
使用 Visual Studio 對(duì)公共方法進(jìn)行單元測(cè)試,跟以前 NUnit 一樣,都是引用需要的類,然后對(duì)公共方法進(jìn)行測(cè)試。

  但是 Visual Studio 還可以對(duì)類的私有方法進(jìn)行測(cè)試。而Visual Studio 不允許測(cè)試代碼跟實(shí)際代碼放在一個(gè)項(xiàng)目中,我們來看看是Visual Studio UnitTest如何做的。

  比如我們有這樣一個(gè)私有方法

namespace ClassLibrary1{

public class DivisionClass{

private int Divide_private(int numerator, int denominator){

return numerator / denominator;

}

}

}

  我們只要在這個(gè)私有方法的右鍵菜單中選擇 創(chuàng)建單元測(cè)試,系統(tǒng)就自動(dòng)產(chǎn)生了這個(gè)私有方法的單元測(cè)試代碼。

  下面我們來分析產(chǎn)生的單元測(cè)試代碼,看Visual Studio UnitTest 是如何對(duì)私有方法進(jìn)行單元測(cè)試的

  簡單來說,Visual Studio UnitTest 生成私有方法的單元測(cè)試時(shí),將自動(dòng)創(chuàng)建一個(gè)私有訪問器。私有訪問器是測(cè)試方法用于訪問私有代碼的方法。單元測(cè)試生成對(duì)私有訪問器的調(diào)用,然后通過私有訪問器來調(diào)用私有方法。私有訪問器駐留在測(cè)試項(xiàng)目中的文件中;因此將被編譯為測(cè)試項(xiàng)目程序集。

  具體來看測(cè)試項(xiàng)目:

  首先我們可以看到一個(gè)名為 VSCodeGenAccessors.cs 的新文件被創(chuàng)建,

  這個(gè)文件包含兩個(gè)類:

  internal 類型的 BaseAccessor 類 和 派生自它的 ClassLibrary1_DivisionClassAccessor 類

  BaseAccessor 類 是通用的訪問器基類。

  ClassLibrary1_DivisionClassAccessor 類 則是對(duì)你要訪問類的私有方法進(jìn)行了反射封裝,這樣你就可以通過操作這個(gè)類來操作該私有方法了。如下面代碼:

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多