测试数据不会造?看这篇文章就够了

所谓的光辉岁月,并不是以后,闪耀的日子,是你对梦想的偏执。


作为软件开发过程中一个非常重要的环节软件测试越来越成为软件开发商和用户关注的焦点。完善的测试是软件质量的保证,因此软件测试就成了一项重要而艰巨的工作。要做好这项工作当然也绝非易事。下面我就讲讲我造测试数据的一些经验和技巧,以供大家参考。

Faker

一、faker 安装

pip install faker

二、使用

  • 模块导入
  • from faker import Faker
  • 创建实例
  • fk = Faker(locale='zh-CN')
    • 参数 use_weighting:指定是否尝试使值的频率与真实世界的频率相匹配 locale='zh-CN':语言环境,默认的 en_US 语言环境,支持传多个 ['ja_JP','en_US','zh-CN']
  • 常用方法
    • 四要素 姓名
      name = fk.name() 身份证
      id_card = fk.ssn() 手机号
      phone = fk.phone_number() 银行卡(信用卡)
      card = fk.credit_card_number()
    • 个人其他信息 地址(带邮编)
      addr = fk.address() 国家名称
      country = fk.country() 省
      city = fk.province() 城市
      city = fk.city() 邮编
      post_code = fk.postcode() 邮箱 个人邮箱
      email = fk.email() 公司邮箱
      company_email = fk.company_email() 公司名称
      company_name = fk.company() 工作岗位
      job = fk.job()
    • 完整个人信息 生成复杂的人物信息 fk.profile(fields=None, sex=None) 生成简单的人物信息 fk.simple_profile(sex=None)
    • 随机数
      num = fk.random_int(min=1000,max=9999)
    • 文本类 随机字符串
      str = fk.pystr() 随机生成词语
      word = fk.word() 随机生成多个词语,返回 list
      word_list = fk.words() 随机生成一句话
      sentence = fk.sentence() 随机生成多句话,返回 list
      sentence_list = fk.sentences() 随机生成多个段落,通过参数 nb 来控制段落数,返回 list
      paragraphs_list = fk.paragraphs(nb=2) 随机生成一篇文章
      text = fk.text()
    • 时间类
      • 随机时间
        • 格式:年-月-日 # 范围:从 1970 到当前时间
        • date = fk.date()# 范围:当前年份
        • date = fk.date_this_year()# 范围:当前月份
        • date = fk.date_this_month()
        • 格式:年-月-日 时:分:秒,范围:从 1970 到当前时间 # 范围:从 1970 到当前时间
        • date_time = fk.date_time()
      • 随机年/月
      • 随机年
      • year = fk.year()
      • 随机月
      • mouth = fk.mouth()
      • 指定时间范围
        • 格式:年-月-日
          date = fk.date_between(start_date='-1y',end_date='today')
          参数
          • start_date='-1y' -1y:一年前 -1m:一个月前
          • end_date='today' today:今天 -1y:一年前 -1m:一个月前
        • 注意点
          • 参数串字符串
          • 开始时间必须小于结束时间
        • 格式:年-月-日 时:分:秒
          date_time = fk.date_time_between(start_date='-3y',end_date='-2y')
          参数
          • start_date='-1y' -1y:一年前 -1m:一个月前
          • end_date='today' today:今天 -1y:一年前 -1m:一个月前
        • 注意点
          • 参数传字符串
          • 开始时间必须小于结束时间
      • 未来时间
        • 格式:年-月-日
          future_data = fk.future_date()
        • 格式:年-月-日 时:分:秒
          future_date_time = fk.future_datetime()
      • 时区
        time_zone = fk.timezone()
      • 时间戳
        unix_time = fk.unix_time()
    • 网络信息 用户名
      user_name = fk.user_name() 密码
      passwd = fk.password()
    • 浏览器信息(user_agent) fk.firefox():随机生成 Firefox 浏览器 user_agent 信息 fk.chrome():随机生成 Chrome 浏览器 user_agent 信息 fk.internet_explorer():随机生成 IE 浏览器 user_agent 信息 fk.opera():随机生成欧朋浏览器 user_agent 信息 fk.safari():随机生成 Safari 浏览器 user_agent 信息
    • 手机信息 Android
      android_info = fk.android_platform_token() iOS
      ios_info = fk.ios_platform_token()
    • 操作系统 fk.windows_platform_token():windows 信息 fk.linux_platform_token():Linux 信息 fk.mac_platform_token():MacBook 信息
  • 高级用法
    • 确保随机数据唯一性 fk.unique.方法名()
      [fk.unique.name() for i in range(10)]
    • 共享随机数
      • Faker 类有一个类方法(seed),支持给生成器设置参数 Generator.seed(seed)
        from faker import Faker
        class Test:
        def init(self):
        self.fk = Faker(locale='zh-CN')
      • def test01(self):
        Faker.seed(1111)
        print(self.fk.name())
      • def test02(self):
        Faker.seed(1111)
        print(self.fk.name())

就给大家介绍到这里了,感谢您的认真阅读,我也会写出更优质的文章的,敬请期待哦!

写在最后

最后再唠唠一句,如果想以测试为长期发展职业目标,是需要时刻保持学习的,要使自己具备竞争力,无论你现在工作几年,只要行动起来,你就已经占优势了,好啦就到这里了,祝大家2022年能升职加薪,没入职的就早日拿到心仪公司的offer,事事顺遂。

这份软件测试学习资源整理起来也不容易,希望大家帮忙给「点赞」「收藏」,咱不做白嫖党!!

#软件测试##测试##测试工程师##职场##求面经#
全部评论
学到了,感谢分享
点赞 回复 分享
发布于 2022-05-12 18:19

相关推荐

评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客企业服务