python 指定大小数组_python生成指定大小的测试txt文档(MB)

前言

在测试过程中经常遇到文件上传的功能,文件的大小边界值测试一直没有好的解决办法,这里我分享一个创建文件的脚本希望对大家有帮助。

demo

""" * Create by dell on 2020/7/10 * Author :wencheng * 微信公众 :自动化测试 To share"""# !/user/bin/env python# -*- coding:utf-8 -*-import osimport time# 获取username, 如chinarendef getusername():    namelist = os.popen('echo %username%').readlines()    username = namelist[0].replace("\n", "")    # 获取当前的username    return username# 获取时间和日期def getnowdatatime(flag=0):    '''    flag = 0为时间和日期         eg:2018-04-11 10:04:55    flag = 1仅获取日期           eg:2018-04-11    flag = 2仅获取时间           eg:10:04:55    flag = 3纯数字的日期和时间   eg:20180411100455    '''    now = time.localtime(time.time())    if flag == 0:        return time.strftime('%Y-%m-%d %H:%M:%S', now)    if flag == 1:        return time.strftime('%Y-%m-%d', now)    if flag == 2:        return time.strftime('%H:%M:%S', now)    if flag == 3:        return time.strftime('%Y%m%d%H%M%S', now)# 生成指定大小的TXT档def generateTXTFile():    fileSize = 0    # 判断输入是否有误    while True:        size = input('请输入你想生成的TXT文件大小(MB):')        if size.strip().isdigit() != True:            print('只能输入整数,请重新输入!')            continue        else:            fileSize = int(size)            break    if fileSize >= 200:        print('正在生成TXT文件,请稍候... ...')    # 生成指定大小的TXT档    filename = getnowdatatime(3) + '_' + size + 'MB.txt'    print(f'文件名:{filename}')    # 设置文件保存的路径    filepath = 'C:\\Users\\' + getusername() + '\\Desktop\\'    f = open(filepath + filename, 'w')    # 获取开始时间    starttime = getnowdatatime()    startclock = time.clock()    for i in range(fileSize):        if i >= 100:            if i % 100 == 0:                print(f'已生成{i//100 * 100}MB数据.')        for j in range(1024):            try:                f.write('01' * 512)            except KeyboardInterrupt:                print('\n异常中断:KeyboardInterrupt')                f.close()                exit(-1)    f.close()    print(f'文件已成生并保存在桌面,  文件大小:{fileSize}MB.\n')    print(f'DetailInfo:')    print(f'保存路径: {filepath + filename}')    print(f'开始时间:{starttime}')    print(f'结束时间:{getnowdatatime()}')    print(f'总共耗时:{(time.clock() - startclock):<.3}sec.')if __name__ == '__main__':    generateTXTFile()

创建1M文件

d1f667b61bdce1801136fbc4e9135fe0.png

efcd93b4659bf0a9b01a1e0aafd55fd2.png

创建100M文件

0fd72327c428f144f6928434b67f67b5.png

c2775351adc247ba4ef24db9ff2dd977.png

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家的支持。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值