aub*_*des 5 c# windows unit-testing mocking event-log
我正在尝试为在 EventLog 中报告条目的应用程序编写单元测试。现在,当我运行单元测试时,我必须创建一个临时的 EventLog,向其中写入条目,并在完成后删除日志。我这样做是因为我需要取回没有构造函数的 EventLogEntry 对象。
我的问题是是否有任何方法可以模拟 EventLog 以取回 EventLogEntries。必须将条目写入实际的 EventLog 对我来说更像是集成测试而不是单元测试。
你会说这更像是一个集成测试,这是正确的。然而,您需要问自己在这里真正想要测试的是什么。如果它确实是一个单元测试,并且您只想测试 EventLogEntries 上的逻辑,那么您应该像对待任何其他外部依赖项一样对待事件日志。
TDD 让我走上了隔离和嘲笑许多东西的道路,这些东西嘲笑起来感觉很奇怪,但最终让我免于以后的维护噩梦。即文件 IO、日志记录、跟踪等...
我会将所有 CRUD 操作粘贴到接口边界后面的事件日志中,并将其视为数据访问。如果您无法轻松地在带外创建 EventLogEntries,那么您甚至可以考虑创建自己的实体来表示事件日志中的条目并使用它们。
| 归档时间: |
|
| 查看次数: |
3830 次 |
| 最近记录: |