Как автоматически создавать тестовые данные с помощью компоновщика, который будет принимать во внимание проверки
Я использую 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)