Я изучаю использование AutoFixture
для создания некоторых наших тестовых данных для модульных тестов. Пока это выглядит так, как будто это сэкономит нам немного кода / обслуживания. Моя единственная проблема сейчас заключается в том, что при создании объекта сложные дочерние объекты на нем не будут соответствующим образом подключаться к идентификаторам. Я пытаюсь найти способ изящно преодолеть это вместо того, чтобы просто вручную подключать идентификаторы после создания объекта. Смотрите пример ниже:
public class Bar
{
public int Id {get; set;}
public string Name {get; set;}
public Foo Foo {get; set;}
public int FooId {get; set;}
}
public class Foo
{
public int Id {get; set}
public string Description {get; set;}
}
В этом примере вызов var myBar = myFixture.Create<Bar>()
заполнит все свойства как для Bar
, так и для его дочернего свойства Foo
. Моя проблема здесь в том, что myBar.FooId
будет отличаться от значения для myBar.Foo.Id
. Та же проблема существует для создания дочерних коллекций. Как я могу преодолеть это, не подключая вручную все мои идентификаторы?