我想从ReSharper的测试运行器输出中省略Debug.Write / WriteLine消息。它可行吗?
答案 0 :(得分:2)
while (Debug.Listeners.Count > 0) Debug.Listeners.RemoveAt(0);
或更具针对性(针对NUnit测试框架):
var nunitListener = Debug.Listeners.Cast<TraceListener>().Where(tl => tl.Name == "NUnit").FirstOrDefault();
if (nunitListener != null) Debug.Listeners.Remove(nunitListener);
请注意,虽然ReSharper添加了自己的跟踪侦听器,但它是测试运行器在输出中显示的NUnit跟踪侦听器。我不知道为什么,但删除“NUnit”跟踪侦听器可以解决问题。