2014-12-13 5 views
0

Я новичок в модульном тестировании и хотел бы знать, как правильно выстроить интерфейс с помощью JustMock Lite. У меня есть класс, который выглядит примерно так:Как правильно протестировать класс, который использует зависимость, используя JustMock

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

Вы должны написать аранжировку части вашего теста. Я не использовал JustMock, но из примеров, которые я предполагаю, что это должно быть что-то вроде этого:

Mock.Arrange(() => reader.ReadUInt()).Returns(10); 

, а затем ваш тест становится:

Assert.AreEqual(age, 10); 

Вы договоритесь, что вернуться и утверждать это действительно вернулся.

Смежные вопросы