2016-11-02 23 views
2

我的設立如下:R#2016(10)+ Nunit 3 - 如何在測試運行期間顯示輸出結果?

  • VS 2015年專業2015年
  • ReSharper的終極2016年1月2日
  • NUnit的3.4.1

由於顎音化,NUnit的3摒棄顯示Console.Write在測試運行器窗口中即時輸出輸出(請參見this documentation page)。這會在測試運行時想要查看輸出時產生問題,如in this Nunit issue所述。該解決方案(據我所知!)是介紹TestContext.Progress能夠寫入測試輸出窗口(在Nunit控制檯中)。但是我用Resharper試過這個,它並沒有在所有的顯示器上顯示(即使在測試完成後)。

總結起來:

  • Console.Write被追加到檢查結果輸出測試完成運行
  • TestContext.Write後(短爲TestContext.Out.Write)直接發送到測試結果輸出,但僅在測試完成後才顯示運行
  • TestContext.Progress.Write will b Ë直送到控制檯上飛
  • ReSharper的顯示TestContext.Write & Console.Write後的測試運行結束並TestContext.Progress.Write並不

我的問題是:Resharper可以即時顯示任何輸出嗎?哪種方法應該用於這個目的?

乾杯

回答

0

Console類有一個SetOut方法,可讓您將輸出重定向到一些TextWriter。你可以在你的測試夾具設置中使用它。

使用ReSharper的測試運行時,在類似的設置這爲我工作:

Console.SetOut(TestContext.Progress);