• 随机数据生成工具Faker实战教程


    每天进步一点点,关注我们哦,每天分享测试技术文章

    本文章出自【码同学软件测试】

    码同学公众号:自动化软件测试,领取资料可加:Matongxue_8

    码同学抖音号:小码哥聊软件测试



    01随机测试数据生成

    在测试的过程中有时候我们需要造数据,并且希望这些数据看起来像真的一样,同时在自动化测试 时也需要一些动态数据(比如手机号、当前日期时间、随机字符串等等),这些手动构造耗时耗力,本文 将带领大家学习一个伪数据的生成工具-Faker

    01什么是Faker

    Faker是python方向的一个第三方库,主要用来创造伪数据,使用Faker,人们不再需要手动或者手写随机数来生成数据,只需要调用Faker提供的相关api即可完成数据的生成

    02安装Faker

    #windows下执行

    pip install faker

    #mac下执行

    python3 -m pip install faker

    03Faker引用及初始化

    from faker import Faker

    # 初始化,设置locale为中文;默认是英文

    fake = Faker(locale = 'zh_CN')

    这里的locale参数可以理解成你要生成哪种类型的随机数据,英文形式的、中文形式的、德语的等等

    04日期类随机数据

    print('年月日:', fake.date(pattern = '%Y-%m-%d'))

    print('随机年份:', fake.year())

    print('随机年份:', fake.year())

    print('随机月份:',fake.month())

    print('随机几号:', fake.day_of_month())

    print('随机星期数:', fake.day_of_week())

    print('时间:', fake.time(pattern = '%H:%M:%S'))

    # -30y是过去30年前为开始日期,end_date表示结束到今天

    print('过去某一天:',fake.date_between(start_date="-30y", end_date="today"))

    print('今天:',fake.date_between_dates()) #今天

    print('日期和时间:',fake.date_time()) #2021-05-14 19:36:00

    print('当前日期时间:',fake.date_time_between_dates())

    print('某个区间内随机日期时 间:',fake.date_time_between_dates(datetime_start=datetime(1999,2,2,10,30,20),dat etime_end=datetime(2000,2,2,10,30,20)))

    print('未来的日期:',fake.future_date(end_date="+30d"))

    print('未来的日期时间:',fake.future_datetime(end_date="+30d")) # 未来日期和时间)

    print('过去的日期:',fake.past_date(start_date="-30m")) # 过去日期

    print('过去的日期时间:',fake.past_datetime(start_date="-30d")) # 过去日期和时间

    print('时间戳:',fake.unix_time())

    结果如下,大家可以对比下

    年月日:2004-03-17

    随机年份:2012

    随机年份:1992

    随机月份:06

    随机几号:02

    随机星期数Wednesday

    时间: 15:40:26

    过去某一天:2007-01-05

    今天:2021-12-20

    日期和时间: 2015-07-26 18:07:37

    当前日期时间:2021-12-20 17:00:17

    某个区间内随机日期时间: 1999-05-23 03:00:03

    未来的日期:2021-12-28

    未来的日期时间:2022-01-12 06:52:26

    过去的日期:2021-12-19

    过去的日期时间: 2021-12-04 17:39:41

    时间戳:1201651489

    05随机字符串/数字/加密

    print('随机字符串:',fake.pystr())

    print('随机小写字母:',fake.random_element())

    print('随机大写字母:',fake.random_letter())

    print('随机一个段落:',fake.paragraph())

    print('随机一句话:',fake.sentence())

    print('随机一篇文章:',fake.text())

    print('随机一个词语:',fake.word())

    # print('随机二进制编码:',fake.binary())

    print('随机Ture和False:',fake.boolean())

    print('随机md5:',fake.md5())

    print('随机密码:',fake.password())

    print('随机SHA1:',fake.sha1())

    print('随机sha256:',fake.sha256())

    print('随机uuid:',fake.uuid4())

    print('三位随机数字:',fake.numerify())

    print('0-9随机数:',fake.random_digit())

    print('1-9随机数:',fake.random_digit_not_null())
    print('0-9999随机数:',fake.random_int())

    print('指定位数的随机数:',fake.random_number(digits=5))

    print('随机小数:',fake.pyfloat())

    print('随机int数:',fake.pyint())

    结果如下,大家可以对比下

    随机字符串: KWGMcNmAbSaWRCLSzPmm

    随机小写字母: b

    随机大写字母: h

    随机一个段落: 来源之间起来决定组织不是.无法查看希望原因他的.

    随机一句话: 显示觉得一定操作作为.

    随机一篇文章: 国际因为威望.全部显示法律用户网站没有能够空间.的人如果电脑方式论坛.内容有限一次但是要求重要.怎么其实类型为了网上.电影孩子其他世界加入当然地址.没有规定作品这么类型.他的这么两个应该学习.同时实现东西增加准备控制只要继续.市场您的电话.解决时候所有决定.其他一切文化只是.这个的话经验音乐.管理免费由于什么谢谢不能.正在方式作品无法. 帮助朋友大小历史知道.

    随机一个词语: 本站

    随机Ture和False: True

    随机md53f6e3b09789337784493f0927cc51dcf

    随机密码: tm75Aoz88_

    随机SHA1:509568f80084adda671b05d3c3018695a1bea620

    随机sha256: c479c7052d260aec91a0d33b5cd2785c4865747af02270b9d077f02e7126d216

    随机uuid: dd2b83f0-e5d8-4cce-a644-f60eaca15e6d

    三位随机数字: 680

    0-9随机数 2

    1-9随机数: 6

    0-9999随机数3315

    指定位数的随机数26146

    随机小数: -8048554.3903039

    随机int数7804

    免费领取码同学软件测试课程笔记+超多学习资料+完整视频+面试题,可加微信:Matongxue_8

    06随机人物相关信息

    print('人物名字:',fake.first_name()) # 名字

    print('女性名字:',fake.first_name_female())

    print('男性名字:',fake.first_name_male())

    print('罗马文名字:',fake.first_romanized_name())

    print('姓:',fake.last_name())

    print('男性的姓:',fake.last_name_male())

    print('女性的姓:',fake.last_name_female())

    print('罗马文的性:',fake.last_romanized_name())

    print('人物全名:',fake.name())

    print('女性全名:',fake.name_female())

    print('男性全名:',fake.name_male())

    print('简略个人信息:', fake.simple_profile())

    print('详细个人信息:', fake.profile())

    print('生成身份证号:',fake.ssn())

    print('生成手机号:',fake.phone_number())

    print('生成手机号段:',fake.phonenumber_prefix())

    print('完整信用卡信息:',fake.credit_card_full())

    print('信用卡号:',fake.credit_card_number())

    print("邮箱:", fake.email())

    结果如下,大家可以对比下

    人物名字: 桂芳

    女性名字:

    男性名字:

    罗马文名字: Guiying

    姓: 包

    男性的姓:

    女性的姓:

    罗马文的性: Qiao

    人物全名: 施斌

    女性全名: 雷丽娟

    男性全名: 周军

    简略个人信息:{'username': 'guiying92', 'name': '孙雪', 'sex': 'F', 'address': '山 西省台北市丰都海口路n座 269807', 'mail': 'yanzhou@hotmail.com', 'birthdate': datetime.date(1912, 10, 19)}

    详细个人信息:{'job': '清洁服务人员', 'company': '易动力信息有限公司', 'ssn': '320506195801305350',
    'residence': '江苏省英县西夏罗路e座 172642', 'current_location':
    (Decimal('-38.550926'), Decimal('-112.093486')), 'blood_group': 'O-',
    'website': ['http://www.pingjun.cn/', 'http://12.cn/'], 'username':
    'cxiang', 'name': '赖杨', 'sex': 'M', 'address': '湖南省合肥市双滦陈街y 座 762742',
    'mail': 'mdong@yahoo.com', 'birthdate': datetime.date(1930, 12, 8)}

    生成身份证号: 530621196509110591

    生成手机号: 13188602771

    生成手机号段189

    完整信用卡信息VISA 16 digit

    雷 樊

    4721944675006067 10/30

    CVC: 638

    信用卡号4568692860225937

    邮箱: yong50@yahoo.com

    07随机地址信息数据

    print('完整地址:', fake.address()) #上海市慧县沈河魏路j座 436993

    print('街道+地址:', fake.street_address()) #关岭街O座

    print('街道名:', fake.street_name()) #李路

    print('城市名:', fake.city_name()) #澳门

    print('城市:', fake.city()) #林市

    print(':',fake.district()) #华龙

    print('省份名:', fake.province()) #山西省

    print('邮编:', fake.postcode()) #361494

    print('国家:', fake.country()) #尼泊尔

    print('国家编码:', fake.country_code()) #ST

    print('地理坐标(纬度):',fake.latitude()) #28.936546

    print('地理坐标(经度):',fake.longitude()) #-152.654212

    结果如下,大家可以对比下

    完整地址: 浙江省淮安县朝阳长春街c座 205711

    街道+地址:巢湖路y座

    街道名:太原街

    城市名:巢湖

    城市:长春市

    :高坪

    省份名:广东省

    邮编:738372

    国家葡萄牙

    国家编码:TW

    地理坐标(纬度): -19.917272

    地理坐标(经度): 166.694798

    08随机公司信息数据

    print('公司名:', fake.company())

    print('公司名后缀:', fake.company_suffix())

    print('公司名前缀:', fake.company_prefix())

    print('企业邮箱:', fake.company_email())

    结果如下,大家可以对比下

    公司名:通际名联科技有限公司

    公司名后缀:传媒有限公司

    公司名前缀:凌云

    企业邮箱: zhaona@yefeng.org

    09随机网络信息数据

    print('生成域名:',fake.domain_name())

    print('生成ipv4:',fake.ipv4())

    print('生成ipv6:',fake.ipv6())

    print('生成MAC地址:',fake.mac_address())

    print('生成uri地址:',fake.uri())

    print('生成url地址:',fake.url())

    print('随机用户名:',fake.user_name())

    结果如下,大家可以对比下

    生成域名 yanglei.cn

    生成ipv4: 149.178.117.123

    生成ipv6: d366:4b0b:3884:5c96:dc8e:edbb:1a0:8080

    生成MAC地址: d6:0d:d9:e3:45:ad

    生成uri地址: http://www.mingu.cn/

    生成url地址: https://jie.cn/

    随机用户名: sunjun

    10随机用户代理信息

    print('随机安卓代理信息:',fake.ios_platform_token())

    print('随机ios代理信息:',fake.android_platform_token())

    print('随机chrome代理信息:',fake.chrome())

    print('随机firefox代理信息:',fake.chrome())

    print('随机ie代理信息:',fake.internet_explorer())

    print('随机opera代理信息:',fake.opera())

    print('随机safari代理信息:',fake.safari())

    print('随机代理信息:',fake.user_agent())

    print('随机windows代理信息:',fake.windows_platform_token())

    print('随机mac代理信息:',fake.mac_platform_token())

    结果如下,大家可以对比下

    随机安卓代理信息:iPad; CPU iPad OS 10_3_3 like Mac OS X

    随机ios代理信息: Android 6.0.1

    随机chrome代理信息: Mozilla/5.0 (Linux; Android 8.1.0) AppleWebKit/531.0
    (
    KHTML, like Gecko) Chrome/49.0.818.0 Safari/531.0

    随机firefox代理信息:Mozilla/5.0 (Linux; Android 3.2) AppleWebKit/533.2 (KHTML, like Gecko) Chrome/52.0.824.0 Safari/533.2

    随机ie代理信息: Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 6.2; Trident/4.0)

    随机opera代理信息: Opera/8.94.(X11; Linux x86_64; bem-ZM) Presto/2.9.169 Version/10.00

    随机safari代理信息: Mozilla/5.0 (Windows; U; Windows 98; Win 9x 4.90) AppleWebKit/535.5.5 (KHTML, like
    Gecko) Version/4.0 Safari/535.5.5

    随机代理信息: Mozilla/5.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/5.0)

    随机windows代理信息: Windows 98

    随机mac代理信息: Macintosh; PPC Mac OS X 10 11_9

    END

    免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频 ☞ 可加:Matongxue_8/关注码同学公众号:自动化软件测试

    本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 相关阅读:
    Cheap Kangaroo(求多个数的最大公约数)
    poj 1094 Sorting It All Out(拓扑排序)
    hdu 5695 Gym Class(拓扑排序)
    Cyclic Components (并查集)
    GCD LCM
    And Then There Was One (约瑟夫环变形)
    System Overload(约瑟夫环变形)
    POJ-1639 Picnic Planning 度数限制最小生成树
    Educational Codeforces Round 60 (Rated for Div. 2) E. Decypher the String
    (ACM模板)二分查找
  • 原文地址:https://www.cnblogs.com/testfan2019/p/16134800.html
Copyright © 2020-2023  润新知