测试人员超好用的数据生成工具丨Datafaker 在手,数据我有

我们一般在测试过程中经常会遇到需要准备大量测试数据的情况,此时如果手动插入效率太低,用一般的方式批量生成数据往往数据的内容不符合我们的要求,太过随机化,不符合真实数据的格式。


这里给大家介绍一个数据生成工具,它最大的好处就是效率高,且自带多种数据生成规则,可以满足你大多数的数据格式要求。 


 Datafaker是大型测试数据和流量测试数据生成工具。它是基于python开发的,与python2.7和python3.4 +兼容,所以我们在使用前需要确保安装了python环境。 

Datafaker的github地址,我们可以在上面下载项目,同时也可以查看对应的官方文档说明: https://github.com/gangly/datafaker  


安装流程


保证你的python已经安装,pip已经安装, 

使用pip install datafaker命令安装 

本次教程是针对mysql数据进行制造测试数据,所以你还需要在你的python中安装以下的模块 

如果你是python2的版本,需要安装MySQLdb 

如果你是python3的版本,需要安装pymysql   --pip install PyMySQL,并且要在你的datafaker目录下的__init__.py文件中添加以下2行:import pymysqlpymysql.install_as_MySQLdb()  

如图↓: 

 文件夹名称可能安装方式不同而不一样,其实就是找到你的datafaker的模块的包,修改其中的__init__.py。 

 打开后添加红框中的2行  


编辑测试数据的元数据


元数据文件中的内容是用来设定你本次要制造的测试数据的生成标准和规则, 假设你要往一个表test中添加测试数据,表结构为如图↓: 

  那么你需要新建一个txt文本,文本中编辑内容如下↓: 

 编辑的内容分3列:

第一列是你表的字段名,

第二列是你的字段的类型,

第三列是你生成数据的规则,

 中间是||隔开.注意规则的设定的格式,其中[:]为固定格式,后面的inc,name等都是自带的规则方法;

 还有很多其他的规则,我这里只列举了其中一小部分,你们可以参考官方文档中的说明,选择适合你测试数据的要求的方法。这里就不一一列举了。 

官方的数据构造规则的说明:https://github.com/gangly/datafaker/blob/master/doc/ConstructionRule.md 


 生成数据


编辑好元数据文件后,

在命令行中执行命令:datafaker mysql mysql+mysqldb://user:password@localhost:3306/crashcourse test 10  --meta test.txt 

其中user和password是你的数据库的用户名密码.crashcourse是你的库名,根据自己的数据库名写,我这里是本地的数据库,所以地址是localhost; 

你们如果是远程的服务器上的数据库,根据自己的情况去填写。后面的test是表名,10代表构造的数据量, test.txt是你的元数据文件名,执行该命令的时候要确保你的当前路径下有元数据文件。

 执行完成后查看数据表, 

 如图我们已经按照规则生成了一批数据  


总结


以上是我用datafaker针对mysql数据库去生成数据的教程,如果你们是其他数据库,可以参考官方文档中的说明,安装你们数据库所要用到的包,再进行连接,祝你们好运。

转载自:www.songqinnet.com @松勤教育丨以工匠精神,专注IT在线教育


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章