2013-12-11 115 views
0

我很新的.NET,我有一些問題,試圖單元測試一些類。 我有一個非常簡單的.NET類編碼像這樣:單元測試.net類:異常和File.WriteAllText

using System; 

namespace One.Namespace.One 
{ 
    public class ExceptionOne : Exception 
    { 
    } 
} 

我能我的單元測試嗎?我試着像這樣的東西,但它不工作

[TestMethod()] 
[ExpectedException(typeof(ExceptionOne))] 
public void ExceptionOneConstructorTest() 
{ 
ExceptionOne target = new ExceptionOne(); 
} 

我另一類是像這樣的

using System.IO; 

namespace One.Write.One 
{ 
    public class Writefile 
    { 
     public void Save(int result) 
     { 
      File.WriteAllText(@"c:\db.txt",result.ToString()); 
     } 
    } 
} 

這將是正確的檢查文件是否具有正確的結果裏面本身寫的嗎?

+0

我不明白你的'ExceptionOne'與寫入文件有關。無論如何 - 'ExpectedException'屬性檢查測試方法是否拋出異常(這與實例創建不同) –

+0

感謝您的答案。他們是兩個不同的類我不知道如何進行單元測試 – user2697881

+0

因爲它目前的狀態,它不需要單元測試。幾乎沒有任何行爲需要測試。你需要的是一個集成版本 – Spock

回答

1
[TestMethod()] 
[ExpectedException(typeof(ExceptionOne))] 
public void ExceptionOneConstructorTest() 
{ 
throw new ExceptionOne(); 
} 

您目前的代碼不是拋出和異常。它只是實例化你的異常類的一個實例。如果你想測試你可以拋出你的異常,請嘗試以上。

您的第二種情況: 您可以通過回讀文件內容並將其與原始內容進行比較來測試文件寫入是否成功。