2010-04-26 143 views
3

我們開始使用C#內置單元測試功能。我爲VisualStudio 2008創建了單元測試代碼。我在生成的代碼上面有幾個問題。C#單元測試代碼問題

#region Additional test attributes 
    // 
    //You can use the following additional attributes as you write your tests: 
    // 
    //Use ClassInitialize to run code before running the first test in the class 
    //[ClassInitialize()] 
    //public static void MyClassInitialize(TestContext testContext) 
    //{ 
    //} 
    // 
    //Use ClassCleanup to run code after all tests in a class have run 
    //[ClassCleanup()] 
    //public static void MyClassCleanup() 
    //{ 
    //} 
    // 
    //Use TestInitialize to run code before running each test 
    //[TestInitialize()] 
    //public void MyTestInitialize() 
    //{ 
    //} 
    // 
    //Use TestCleanup to run code after each test has run 
    //[TestCleanup()] 
    //public void MyTestCleanup() 
    //{ 
    //} 
    // 
    #endregion 

如果我需要的初始化和清除方法,做我需要刪除這些「我」,從法的名字時,我讓他們:以下是我的代碼從生成的文件複製?

//Use ClassInitialize to run code before running the first test in the class 
    //[ClassInitialize()] 
    //public static void MyClassInitialize(TestContext testContext) 
    //{ 
    //} 

我需要在運行第一個測試在什麼地方調用"MyClassInitialize"方法或者它會被稱爲被稱爲其他方法之前自動。

其他三種方法的類似問題,他們是否在正確的時間框架自動調用?

回答

6

該方法由測試框架自動調用。我相信,如果你願意,你可以重命名它們,因爲它使用屬性來確定在適當的時候調用適當的方法。請記住取消註釋屬性以及方法本身,否則測試框架將無法找到該方法並調用它。

3

不,方法的名稱是不相關的。把它們命名爲你想要的。這是方法上面的屬性,告訴測試運行時這些方法的用途。