Как автоматически создавать тестовые данные с помощью компоновщика, который будет принимать во внимание проверки

Я использую NBuilder для создания тестовых данных, и мои классы имеют большое количество свойств, поэтому ручное создание исключено. Прежде чем использовать NBuilder, я скопировал, вставил некоторые SQL-выборки в CSV-файлы и воссоздал их в тестах с использованием автоматического сопоставления. Теперь я хочу использовать NBuilder или что-то еще, и я сталкиваюсь с проблемой ограничений Entity/DB.

Есть ли способ, которым я могу сказать некоторым из этих сборщиков принять во внимание мой файл Mapping при генерации данных. Например, если есть отображение

  this.Property(t => t.SomeId)
                .IsFixedLength()
                .HasMaxLength(3);

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

1 ответ

Интересно, можете ли вы использовать Linq-to-EDMX для доступа к информации о сопоставлении для ваших сущностей. Имея эту информацию, вы можете использовать NBuilder's CreateNew метод сделать что-то вроде этого:

// Linq-to-EDMX was used to get the propertyLength value
x => x.SomeId = randomString.Substring(0, propertyLength)
Другие вопросы по тегам