Я использую встроенное модульное тестирование Laravel для проверки правильности моей модели, а также использую Фабричный Маффин генерировать поддельные данные для моих моделей.
Это работает, однако мне очень трудно найти полный список генераторов, которые я могу использовать для генерации случайных данных. Например, мне нужно сгенерировать случайную строку, и я не могу найти имя генератора, чтобы сделать это. Возьмите это как пример:
FactoryMuffin::define('User', array(
'email' => 'unique:email',
'password' => 'password',
'password_reset_code' => 'alpha_num'
));
Единственное, что здесь работает, это электронная почта. Где я определил пароль для password
он использует буквенную строку "password"
, даже если Фейкер библиотека что на самом деле генерирует случайные данные имеет метод, называемый password
,
Я смог получить простой список поддерживаемых генераторов, выполнив следующие действия:
FactoryMuffin::getFaker();
Объект, возвращаемый из этого, имеет ряд методов и свойств, которые соответствуют тому, что я могу использовать в define
вызовите, однако количество методов, которые я могу использовать, не близко к тому, что обеспечивает фактическая библиотека Faker.
Я что-то здесь упускаю?
У Faker есть куча разных провайдеров, которые содержат генераторы для разных типов данных и локалей. Вы проверили, какие из них доступны (в разделе «Поставщик»), или, возможно, в вашей локали установлено что-то, чего нет у поставщиков? (Я использовал электронную почту и пароль, как указано выше, без проблем). Для случайной строки вы можете использовать «lexify», но это будет фиксированная длина или просто «слово».
Других решений пока нет …