Fake data
当测试程序需要数据时,可以通过faker来构造测试数据
安装
1 | $ pip install faker |
基本使用
1 | from faker import Faker |
对方法 faker.ipv4()的每次调用都会产生不同的随机结果
1 | for _ in range(10): |
提供的providers
faker.providers.address
faker.providers.automotive
faker.providers.bank
faker.providers.barcode
faker.providers.color
faker.providers.company
faker.providers.credit_card
faker.providers.currency
faker.providers.date_time
faker.providers.emoji
faker.providers.file
faker.providers.geo
faker.providers.internet
faker.providers.isbn
faker.providers.job
faker.providers.lorem
faker.providers.misc
faker.providers.passport
faker.providers.person
faker.providers.phone_number
faker.providers.profile
faker.providers.python
faker.providers.sbn
faker.providers.ssn
faker.providers.user_agent
创建自定义的provider
对于一个枚举类型,可以创建自定义的provider
1 | from enum import Enum |
构造数据
可以根据不同的列名,获取对应的provider_name,然后通过getattr(faker, provider_name)()调用后获取数据
例如
- 如果列名为src_ip或dst_ip,都调用ipv4()这个provider
- 如果列名为created_at或updated_at,都调用data_time_this_year()这个provider
1 | fake_provider_alias = { |