如何从Factory_boy中使用Faker

9 浏览
0 Comments

如何从Factory_boy中使用Faker

Factory_boy 使用 fake-factory (Faker) 来生成随机值,我想直接使用 Faker 在我的 Django 测试中生成一些随机值。

Factory_boy 的文档建议使用 factory.Faker 和其提供者,例如:

class RandomUserFactory(factory.Factory):
    class Meta:
        model = models.User
    first_name = factory.Faker('first_name')

但是这样并没有生成任何名称:

>>> import factory
>>> factory.Faker('name')

>>> type(factory.Faker('name'))

根据 factory_boyfaker.py 类,factory.Faker('ean', length=10) 调用了 faker.Faker.ean(length=10),但是 Faker 的文档表示它应该显示一个名称:

from faker import Faker
fake = Faker()
fake.name()
# 'Lucy Cechtelar'

有没有其他办法可以使用 Faker 而不是直接从 Faker 设置一个实例?

from faker import Factory
fake = Factory.create()
fake.name()

0