基于python实现生成指定大小txt文档

2020-10-08 0 298

前言

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

demo

\"\"\"
 * Create by dell on 2020/7/10
 * Author :wencheng
 * 微信公众 :自动化测试 To share
\"\"\"
# !/user/bin/env python
# -*- coding:utf-8 -*-

import os
import time


# 获取username, 如chinaren
def 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文件

基于python实现生成指定大小txt文档基于python实现生成指定大小txt文档

创建100M文件

基于python实现生成指定大小txt文档基于python实现生成指定大小txt文档

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自学编程网。

遇见资源网 Python 基于python实现生成指定大小txt文档 http://www.ox520.com/26509.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务