前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >想什么有什么?完美数据制造者faker

想什么有什么?完美数据制造者faker

作者头像
搁浅同学
发布2022-07-21 15:04:55
3200
发布2022-07-21 15:04:55
举报
文章被收录于专栏:搁浅测试同学小分享

各位测试同学,你是否因为各种测试数据而烦恼,是否因为这个而不停掉头发?现在福音来啦!不用998,也不用99,只需要点个赞,支持下。给大家分享这个faker库,想要什么什么都有的数据,简直不要太好用。

既然说的那么厉害,那我提下需求,我要姓名,手机,地址,等等先安装下,还是是通过pip这个包管理工具安装

代码语言:javascript
复制
pip install Faker

你要姓名、手机、地址,代码给你拿去用

代码语言:javascript
复制
#!/usr/bin/python
# -*- coding: utf-8 -*-
from faker import Faker

fake = Faker()
print(fake.name())
print(fake.address())
print(fake.phone_number())

哎,你给的,和我想要的不一样呀,我要中文呀。

别急,faker支持多种语言,支持多种语言

简体中文 zh_CN

繁体中文 zh_TW

德文 de_DE

日文 ja_JP

法文 fr_FR

..........总之很多,可以到这个地址可以查到

https://faker.readthedocs.io/en/master/index.html

只要新建faker对象是,将当作参数传入即可,那现在我们生成多个的不同语言的名字

代码语言:javascript
复制
#!/usr/bin/python
# -*- coding: utf-8 -*-
from faker import Faker

lang_list = ['zh_CN', 'zh_TW', 'de_DE', 'ja_JP', 'fr_FR']
for lang in lang_list:
    fake = Faker(lang)
    print(fake.name())

那么介绍下我们常用的信息

faker主要是通过不同类型的providers,生成不同类型的信息,给大家看下标准的providers

那么不用添加providers,可以直接通过生成器生成,请查看下面代码

代码语言:javascript
复制
#!/usr/bin/python
# -*- coding: utf-8 -*-
from faker import Faker

fake = Faker('zh_CN')
print(fake.company())  # 生成公司名 ,比如 华泰通安传媒有限公司
print(fake.address())  # 生成地址,比如 江西省沈阳市白云巢湖路J座 234523
print(fake.name())  # 生产名字 比如 高倩
print(fake.color())  # 生成颜色值,比如 #4496aa
print(fake.phone_number())  # 生成手机号,比如 18626168740
print(
    fake.profile())  # 生成个人档案 ,比如 {'job': '金融/经济研究员', 'company': '易动力传媒有限公司', 'ssn': '510301198812033801', 'residence': '重庆市兴安盟县南湖饶街a座 936553', 'current_location': (Decimal('-15.0069625'), Decimal('152.862184')), 'blood_group': 'O+', 'website': ['https://junchang.cn/'], 'username': 'baijie', 'name': '潘芳', 'sex': 'F', 'address': '广西壮族自治区合山县西峰杨路u座 273984', 'mail': 'na26@gmail.com', 'birthdate': datetime.date(1917, 12, 12)}
print(fake.user_agent())  # 生成浏览器访问类型,比如 Opera/8.27.(X11; Linux i686; lzh-TW) Presto/2.9.185 Version/10.00
print(fake.job())  # 生产职业 ,比如 理货员

有些信息需要添加对应的provider,生成某种类型的信息,比如person

代码语言:javascript
复制
#!/usr/bin/python
# -*- coding: utf-8 -*-
from faker import Faker
from faker.providers import person

fake = Faker('zh_CN')
fake.add_provider(person)
print(fake.first_name())  # 生成名字,比如 玉梅
print(fake.last_name())  # 生成姓,比如 李
print(fake.name_male())  # 生成男性名字,比如 田浩
print(fake.name_female())  # 生成女性名字,比如 孙红霞
print(fake.language_name())  # 生成英文名,比如 Norwegian

今天就分享到这里了哦!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 暴走的软件测试Tester 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档