Python 脚本实现批量生成百万条excel测试数据

发表于:2021-8-19 09:38  作者:桃子   来源:51Testing软件测试网原创

字体: | 上一篇 | 下一篇 |我要投稿 | 推荐标签: Python

  背景介绍
  最近在测试的时候,比如导入这个功能,想要测试上传大数据量文件是否好用,有两个点需要解决:一是怎么生成大量的excel文件,二是如何保证生成的文件格式与项目要求的格式一致。
  有同学可能想到从晚上下载大容量的文件,但是格式这一块无法保证。
  还有一种笨方法可以复制粘贴,粘贴几十条数据还可以,大容量这块无法保证。
  这时候脚本的作用就体现了,利用程序的思想解决问题,其实就是excel写入数据的过程。接下来看看~
  实现效果:

  实现功能拆分
  可以按照实际的场景想象一下,然后用机器的语言实现。

  实际场景
  我们需要创建一个excel文件,然后写好标题,之后按照标题填写内容,写好之后保存。
  拆分代码功能区:
  1.创建一个excel对象->创建sheet
  2.添加字段、行、列、名称
  3.写入编号字段数据
  4.保存
  上面稍微复杂一点的时步骤3,接下来我们按照功能点一行一行填写代码。
  按功能点填充代码:

  1.导入相关包
import xlwt #导入xlwt 函数,专门操作excel写文件的函数
import random #导入随机函数

  2.创建工作簿对象->创建sheet
#创建工作簿对象
book=xlwt.workbook(encoding='utf-8')
#创建sheet
sheet=book.add_sheet('test',cell_overwrite_ok=True)

  ·创建工作使用workbook()函数;
  ·创建表使用book.add_sheet()函数,其中一个参数为名称,第二个参数为是否支持重写。

  3.添加标题内容:字段、行、列、名称
 sheet.write(0, 0, '部门ID')

sheet.write(0, 1, '部门名称')

sheet.write(0, 2, '部门顺序')

sheet.write(0, 3, '负责人')

sheet.write(0, 4, '联系电话')

sheet.write(0, 5, '邮箱')

sheet.write(0, 6, '状态')

sheet.write(0, 7, '上级部门名称')

sheet.write(0, 8, '部门编号')

sheet.write(0, 9, '部门简称')

  使用sheet.write(行,列,内容)函数进行填充,一般标题都是第0行。

  4.写入编号字段数据
 for i in range(10):
  sheet.write(i+1,0,300+id)
  sheet.write(i+1,1,random.choice([测试],[开发],[产品]))
  sheet.write(i+1,7,'齐大山铁矿')
  sheet.write(id + 1, 6, "正常")
  sheet.write(id + 1, 8, random.randint(1, 100))

  ·for循环,逐行写入内容;
  ·random.choice()函数实现随机选择字符串;
  ·random.randint(1,100)实现1,100随机数。


版权声明:本文出自《51测试天地》第六十二期。51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。

评 论

论坛新帖



建议使用IE 6.0以上浏览器,800×600以上分辨率,法律顾问:上海信义律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2022, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪公网安备 31010102002173号

51Testing官方微信

51Testing官方微博

扫一扫 测试知识全知道