Factory_boy
использует fake-factory (Faker)
для генерации случайных значений, я хотел бы генерировать некоторые случайные значения в своих тестах Django напрямую с помощью Faker.
Factory_boy docs предлагает использовать factory.Faker
и его поставщика как:
class RandomUserFactory(factory.Factory):
class Meta:
model = models.User
first_name = factory.Faker('first_name')
Но это не генерирует никакого имени:
>>> import factory
>>> factory.Faker('name')
<factory.faker.Faker object at 0x7f1807bf5278>
>>> type(factory.Faker('name'))
<class 'factory.faker.Faker'>
От Factory_boy
faker.py
class factory.Faker('ean', length=10)
вызывает faker.Faker.ean(length=10)
, но Faker
docs говорит, что он должен показывать имя:
from faker import Faker
fake = Faker()
fake.name()
# 'Lucy Cechtelar'
Есть ли другой способ использовать Faker
вместо установки экземпляра непосредственно из Faker
?
from faker import Factory
fake = Factory.create()
fake.name()