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

发布于 更新于
本文目录
  1. Faker
  2. 一、faker安装
  3. 二、使用
  4. 模块导入
  5. 创建实例
  6. 常用方法
  7. 随机年
  8. 随机月
  9. 高级用法

技术文章测试开发

pip install faker

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())

来源:testingpai

继续阅读