2009-11-01 41 views
2

我的單元測試正在運行時如何查看控制檯輸出?我正在使用Visual Studio 2008單元測試框架。所以我知道在測試完成後,我可以進入測試的結果頁面並單擊輸出,但是我可以在執行單元測試時有效地觀察控制檯輸出以進行測試。我的單元測試在Visual Studio 2008中運行時,如何查看控制檯輸出?

編輯 - 興趣在VS一個明確的答案開箱(即不必買一個插件)

回答

0

使用TDD插上像ReSharper的orTestDriven.net

+0

我會看看謝謝 - 是它仍然會使用MS單元測試框架的想法? – Greg 2009-11-02 03:10:06

+0

是的,TestDriven支持MSTest開箱即用,並且ReSharper也可能..如果沒有插件的話。 – ryber 2009-11-02 13:52:54

+0

順便說一句,知道如果我的問題海軍在VS內解決,而無需購買插件 – Greg 2009-11-02 20:45:41

1

您可以使用

System.Diagnostics.Debug.WriteLine("Message"); 

在單元測試運行時輸出到「輸出」選項卡。

如果您使用的是Console.Out.WriteLine(「Message」),則只會在測試運行結束時顯示,如您所述。

我用下面給我運行時的信息和試驗結果輸出的末尾:

private void TestTrace(string message) 
{ 
    System.Diagnostics.Debug.WriteLine(message); 
    Console.Out.WriteLine(message); 
} 
0

dodgy_coder's answer略有改善,它可以讓你使用的Console.WriteLine一個可變的語法與格式的語句它後面的任意長度的對象列表。

private void TestTrace(string message, params object[] args) 
    { 
     System.Diagnostics.Debug.WriteLine(String.Format(message,args)); 
     Console.Out.WriteLine(message,args); 
    } 

    void ex() 
    { 
     TestTrace("foo {0} {1}",bar,zzyzx); 
    } 

請注意,您必須運行在調試模式。在發佈模式下,System.Diagnostics.Debug消息被抑制。

相關問題