一、前言
在做自动化测试或压力测试时会需要大批量生成测试数据,简单的方式你可以写一个存储过程使用随机函数来生成记录,但这种生成数据看起来不够真实,其实有蛮多现成的工具可以完成这一任务。
二、Faker基本使用介绍
faker是一个生成伪造数据Python第三方库,可以伪造姓名、城市等等,并且支持中文。
安装 pip install faker
使用flask shell交互生成测试数据
三、批量生成会员及博客文章数据
注:使用faker构造user及post对象,然后批量创建记录,生成了100万条记录大约花费了30分钟左右。
四、faker相关方法
进入faker源代码目录faker/providers下,可以看到提供了下列类别的生成数据方法。
address: 地址相关的automotive:汽车相关的,牌照等bank:银行相关的barcode:条码相关的color:颜色相关的company:公司相关的,公司名称,公司口号等等。。credit_card:信用卡相关的currency:货币相关的date_time:时间相关的file:文件相关的,文件名,扩展名,路径等geo:地理位置相关的internet:网络相关的,域名,邮件等isbn:图书相关的job:职位相关的lorem:misc:杂项等。person:人物相关的phone_number:电话相关的profile:档案相关的python:python相关的,ssn:身份证user_agent:用户代理相关的
进入每个provider 目录providers/address/init.py可以查看支持哪些构造数据的方法。比如地址生成方法。