开发者

基于Faker生成测试数据的示例代码

目录
  • 生成 Chrome 的 user_agent
  • 随机生成 user_agent
  • 生成日期
  • 人名
  • Faker 生成随机测试数据
    • 初始化国家地区
    • 人名相关
    • 公司名相关
    • 邮箱相关
    • 地区相关
    • 卡相关
    • 个人信息相关
    • 浏览器user_agent相关
    • 网络基础相关
    • 编程字相关
    • 文本相关
    • 编码相关
    • 用户名密码

Faker 是用来生成测试数据的python包,可以很方便地生成各种测试数据,支持中文,支持命令行模式。

$ faker -l zh_CN address
甘肃省帆市清浦谢街G座

$ faker -l zh_CN name
刘**

基于Faker生成测试数据的示例代码

生成 Chrome 的 user_agent

from faker import Faker

fake = Faker('zh_CN')
for _ in range(5):
    chrome = fake.chrome()
    print(chrome)


# Mozilla/5.0 (X11; linux x86_64) AppleWebKit/532.1 (Khtml, like Gecko) Chrome/43.0.857.0 Safari/532.1
# Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.0 (KHTML, like Gecko) Chrome/46.0.841.0 Safari/534.0
# Mozilla/5.0 (iPhone; CPU iPhone OS 13_7 like MAC OS X) AppleWebKit/532.1 (KHTML, like Gecko) CrIOS/14.0.801.0 Mobile/54X039 Safari/532.1
# Mozilla/5.0 (Linux; android 3.2.1) AppleWebKit/531.2 (KHTML, like Gecko) Chrome/25.0.873.0 Safari/531.2
# Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_8) AppleWebKit/536.0 (KHTML, like Gecko) Chrome/60.0.815.0 Safari/536.0

随机生成 user_agent

from faker import Faker

fake = Faker('zh_CN')
for _ in range(5):
    chrome = fake.user_agent()
    print(chrome)

# Opera/8.19.(X11; Linux i686; niu-NZ) Presto/2.9.180 Version/10.00
# Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.2; Trident/3.0)
# Mozilla/5.0 (X11; Linux x86_64; rv:1.9.7.20) Gecko/8311-12-14 02:44:34 Firefox/3.8
# Mozilla/5.0 (X11; Linux i686; rv:1.9.5.20) Gecko/9099-08-21 17:11:00 Firefox/3.6.17
# Mozilla/5.0 (Macintosh; Intel Mac OS X 10_5_1 rv:6.0; fy-DE) AppleWebKit/535.48.4 (KHTML, like Gecko) Version/4.1 Safari/535.48.4

生成日期

from faker import Faker

fake = Faker('zh_CN')
Faker.seed(0)
for _ in range(5):
    date = fake.date()
    print(date)

# 1996-03-20
# 2021-07-31
# 1998-08-15
# 1972-10-03
# 1987-08-15

人名

from faker import Faker

fake = Faker('zh_CN')
Faker.seed(0)
for _ in range(5):
    name = fake.name()
    print(name)

Faker 生成随机测试数据

初始化国家地区

fake = Fajavascriptker(locale='zh-cn')  # 初始化国家地区为中国
# fake = Faker(locale='en-au') # 澳洲
 
'''
常见国家的本地化参数示例:
美国英语(en_US):Faker('en_US')
英国英语(en_GB):Faker('en_GB')
中文(中国)(zh_CN):Faker('zh_CN')
中文(台湾)(zh_TW):Faker('zh_TW')
法国法语(fr_FR):Faker('fr_FR')
德国德语(de_DE):Faker('de_DE')
日本日语(ja_JP):Faker('ja_JP')
澳洲:Faker(locale='en-au')
'''

人名相关

print(fake.first_name()) # 生成随机first name
print(fake.last_name()) # 生成随机last name
print(fake.first_name_female()) # 生成随机女性名字
print(fake.first_name_male()) # 生成随机男性名字
print(fake.name_female()) # 生成随机女性全名
print(fake.name_male()) # 生成随机男性全名
print(fake.name()) # 生成随机名字

公司名相关

print(fake.company()) # 公司名全称
print(fake.company_prefix()) # 公司名
print(fake.company_suffix()) # 公司性质,如xx有限公司
print(fake.bs()) # 公司服务名

邮箱相关

print(fake.ascii_company_email()) # ASCII公司邮箱
print(fake.ascii_email()) # ASCII邮箱
print(fake.company_email()) # 公司邮箱
print(fake.safe_email()) # 安全邮箱
print(fake.email()) # 普通邮箱

地区相关

print(fake.country()) # 国家
print(fake.country_code()) # 国家代码
print(fake.province()) # 省
print(fake.city()) # 市
print(fake.district()) # 区
print(fake.street_address()) # 街道地址
print(fake.street_name()) # 街道名
print(fake.postcode()) #邮编
print(fake.address()) # 详细地址
print(fake.city_suffix()) # "市"或"县"
print(fake.street_suffix()) # "街"或"路"

卡相关

print(fake.credit_card_full()) # 完整的信用卡信息
print(fake.credit_card_number()) # 信用卡号
print(fake.credit_card_provider()) # 信用卡类型
print(fake.credit_card_expire()) # 信用编程卡到期日
print(fake.credit_card_security_code()) # 信用卡安全码

个人信息相关

print('+86' + fake.phone_number())# 电话号
print(fake.password()) # 密码
print(fake.ssn()) # 身份证号
print(fake.date()) # 生日

浏览器user_agent相关

print(fake.chrome()) # Chrome浏览器的user_agent信息
print(fake.firefox()) # 火狐浏览器
print(fake.opera()) # opera浏览器
print(fake.safari()) # safari浏览器
print(fake.internet_explorer()) # IE浏览器
print(fake.linux_platform_token()) # 随机生成linux信息
print(fake.user_agent()) # 随机生成user_agent信息

网络基础相关

print(fake.image_url()) # URL地址-带路径
print(fake.url()) # URL地址-不带路径
print(fake.domain_name()) # 域名
print(fake.domain_word()) # 域词(不包含后缀)
print(fake.tld()) # 域名后缀
print(fake.ipv4()) # ipv4地址
print(fake.ipv6()) # ipv6地址
print(fake.mac_address()) # mac地址
print(fake.uri()) # URI地址
print(fake.uri_page()) # 网址文件-不包含后缀
print(fake.uri_path()) # 网址文件路径-不包含文件名
print(fake.uri_extension()) # 网址文件域名后缀

数字相关

print(fake.numerify()) # 随机三位数字
print(fake.pyint()) # 随机int数字
print(fake.pyfloat()) # 随机float数字
print(fake.pydecimal()) # 随机decimal数字

文本相关

print(fake.null_boolean()) # None,True,Falsjavascripte
print(fake.pystr()) # 随机字符串
print(fake.word()) # 随机生成一个词语
print(fake.words()) # 随机生成多个词语,返回的是一个列表
print(fake.paragraph()) # 随机生成一个段落
print(fake.sentence())# 随机生成一句话
print(fake.sentences()) # 随机生成多句话,返回的是一个列表
print(fake.text()) # 随机生成一篇文章
print(fake.texts()) # 随机生成多篇文章

编码相关

print(fake.md5()) # 随机生成md5
print(fake.sha1()) # 随机生成sha1
print(fake.sha256()) # 随机生成sha256
print(fake.uuid4()) # 随机生编程客栈成uuid
print(fake.binary()) # 随机生成二进制编码

用户名密码

print(fake.user_name()) # 用户名
print(fake.password()) # 密码,随机生成密码,可选参数:length:密码长度;special_chars:是否能使用特殊字符;digits:是否包含数字;upper_case:是否包含大写字母;lower_case:是否包含小写字母

到此这篇关于基于Faker生成测试数据的示例代码的文章就介绍到这了,更多相关Faker生成测试数据内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新开发

开发排行榜