Цель создания анонимных типов в AutoFixture для тестируемого класса?

Недавно я начал использовать библиотеку AutoFixture (http: //autofixture.codeplex. com /) для модульного тестирования, и мне это очень нравится.

Я получил этот образец кода с веб-сайта AutoFixture CodePlex. Мой вопрос касается строки № 8.

1.   [TestMethod]
2.   public void IntroductoryTest()
3.   {
4.        // Fixture setup
5.        Fixture fixture = new Fixture();
6.
7.        int expectedNumber = fixture.CreateAnonymous<int>();
8.        MyClass sut = fixture.CreateAnonymous<MyClass>();
9.        
10.        // Exercise system
11.        int result = sut.Echo(expectedNumber);
12.        
13.        // Verify outcome
14.        Assert.AreEqual<int>(expectedNumber, result, "Echo");
15.        // Teardown
16.    }

Я не могу понять, зачем нам нужно создавать анонимный объект тестируемого класса.

        MyClass sut = fixture.CreateAnonymous<MyClass>();

Класс должен быть настоящим объектом IMO. Например ..

        var sut = new MyClass();    

У меня вопрос, в чем реальная выгода от создания анонимного объекта для тестирования?

7
задан razlebe 2 December 2011 в 13:11
поделиться