关于Debug.Print
语句,最佳实践是什么?
我应该在类方法中使用Debug.Print
语句,还是应该完全避免使用Debug.Print
?
如果可以接受Debug.Print
语句,我是否应该考虑使用Trace.Print
或EventLog
?
在单元测试中,Debug.Print
语句是否必要?我能否通过编写良好的单元测试来避免使用Debug.Print
语句?
关于Debug.Print
语句,最佳实践是什么?
我应该在类方法中使用Debug.Print
语句,还是应该完全避免使用Debug.Print
?
如果可以接受Debug.Print
语句,我是否应该考虑使用Trace.Print
或EventLog
?
在单元测试中,Debug.Print
语句是否必要?我能否通过编写良好的单元测试来避免使用Debug.Print
语句?
Debug.Print
是可以接受的,尤其是因为在您的发布版本中,它们将被编译清除。但是,“散落”在代码中并不特别有生产力或有用。
您可以在调试特定代码区域时添加它。一旦确定了缺陷,您可以编写一个单元测试来覆盖该情况,修复错误,然后删除对Debug.Print
的调用。
我有时会使用并保留在代码库中的是Debug.Assert
——如果我的应用程序处于预期状态之外,它就像是内置断点,这只是在进行自动化和手动测试时增加的安全措施。
Debug.Print
在单元测试中不是必需的,并且不应为了单元测试而添加。
我从未使用过Debug.Print或Trace.Print。我写了很多单元测试。我从未发现需要在编写的单元测试中使用Debug或Trace对象。但是,我尽可能地进行单元测试。
Debug.Assert
语句也会被删除(除非在“发布配置”中添加了DEBUG
)。如果您想要在“发布版本”中执行断言,请考虑使用Trace.Assert
。 - DavidRR