我是单元测试的新手,想知道如何使用JustMock Lite正确模拟界面。我的课程看起来像这样:
public class Person
{
public Person(IFileReader reader)
{
Parse(reader);
}
public string Name {get; private set;}
public uint Age {get; private set;}
private void Parse(IFileReader reader)
{
Name = reader.ReadString();
Age = reader.ReadUInt();
}
}
我已经创建了一个类似的测试方法
[TestMethod]
public void GetAgeReturnsCorrectValue()
{
// arrange
var reader = Mock.Create<IFileReader>();
var person= new Person(reader);
// act
var age = person.Age;
// assert
Assert.AreEqual(age, ???);
}
编写此单元测试的正确方法是什么?
答案 0 :(得分:0)
您应该编写测试的安排部分。我还没有使用JustMock,但从示例中我猜它应该是这样的:
Mock.Arrange(() => reader.ReadUInt()).Returns(10);
然后你的测试成为:
Assert.AreEqual(age, 10);
你安排返回的内容,断言确实返回了。