我对用 C# 编写单元测试有点困惑。我编写了以下类(class)来学习 Moq。我注意到 [SetUp] 实际上是来自 NUnit 的引用。如何编写一个仅使用一个框架或另一个框架的测试类,或者这是否可能?如果我想使用 Moq,我缺少哪些属性才能成功运行此测试?我知道有 [TestFixture]、[TestMethod] 等,但我应该使用哪一个来起订量! 谢谢, 詹姆斯
public class CatalogCommandTests
{
private Mock<IReferenceData> _mockReferenceData;
[SetUp]
public void TestInitialize()
{
_mockReferenceData = new Mock<IReferenceData>();
}
public void TestMyGetMethodReturnsListOfStrings()
{
var contractsList = new List<Contract>();
_mockReferenceData.Setup(x => x.MyGetMethod()).Returns(contractsList);
}
}
最佳答案
你的模拟看起来不错。要获取 IReferenceData 的模拟,您必须调用 _mockReferenceData.Object。
用SetUp属性修饰的方法将在调用每个测试方法之前执行。 (参见:Setup)。
如果您希望调用 TestMyGetMethodReturnsListOfStrings,则必须使用 Test 属性来修饰该方法 (参见:Test)。
关于c# - 使用最小起订量单元测试框架编写测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19313943/