【发布时间】:2022-05-19 09:13:33
【问题描述】:
通过创建private static 字段的sharing context 方法有什么缺点?如果我不需要打电话给Dispose?
public class MyTests3 : IDisposable
{
private static Mock<ILogger> _loggerMock = new Mock<ILogger>();
public void Dispose()
{
_loggerMock.Invocations.Clear();
}
[Fact]
public void Debug_OnInit_CalledOnce()
{
// arrange & act
_loggerMock.Object.Debug("first");
// assert
_loggerMock.Verify(l => l.Debug(It.IsAny<string>()), Times.Once);
}
[Fact]
public void Debug_OnExecute_CalledOnce()
{
// arrange & act
_loggerMock.Object.Debug("second");
// assert
_loggerMock.Verify(l => l.Debug(It.IsAny<string>()), Times.Once);
}
}
另一个问题 - 我应该在测试完成后调用 Reset 获取模拟对象吗?
【问题讨论】:
-
您的“共享上下文”链接无效。
标签: c# unit-testing moq xunit dispose