我实施了一个API来处理EventLogRecord
对象。
using System.Diagnostics.Eventing.Reader;
...
MyLog ProcessEvent(EventLogRecord eventRecord)
现在,我想为此创建单元测试,EventLogRecord
没有公共构造函数。如何在不连接事件记录系统的情况下获取EventLogRecord
对象?
答案 0 :(得分:0)
制作像这种(非虚拟)工作这样的不可测试项目的标准方法是使用包装器。以下是该想法的一些观点:
WrapperEventLogRecord : IEventLogRecordWrapper
{
ctor(EventLogRecord eventLogRecord)
public ActivityId {get{return _eventLogRecord.ActivityId;}}
}
现在你可以传入界面并根据需要进行模拟