python生成指定大小的txt文件(MB)
阿新 • • 發佈:2020-07-17
前言
在測試過程中經常遇到檔案上傳的功能,檔案的大小邊界值測試一直沒有好的解決辦法,這裡我分享一個建立檔案的指令碼希望對大家有幫助。
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