一、前言
在做自动化测试或压力测试时会需要大批量生成测试数据,简单的方式你可以写一个存储过程使用随机函数来生成记录,但这种生成数据看起来不够真实,其实有蛮多现成的工具可以完成这一任务。
二、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可以查看支持哪些构造数据的方法。比如地址生成方法。