【发布时间】:2011-10-07 19:09:13
【问题描述】:
过去,当我想模拟一个抽象类时,我只需在扩展抽象类的代码中创建一个模拟类,然后在我的单元测试中使用该类...
public abstract class MyConverter : IValueConverter
{
public abstract Object Convert(...);
public virtual Object ConvertBack(...) { ... }
}
private sealed class MockedConverter : MyConverter { ... }
[TestMethod]
public void TestMethod1()
{
var mock = new MockedConverter();
var expected = ...;
var actual = mock.ConvertBack(...);
Assert.AreEqual(expected, actual);
}
我想养成使用 Moq 的习惯。我不确定如何使用 Moq 来测试我的抽象类的默认返回值。这里有什么建议吗?
【问题讨论】:
-
模拟抽象类很像模拟接口。这很简单。
标签: c# unit-testing mocking moq abstract-class