基于python實(shí)現(xiàn)生成指定大小txt文檔
前言
在測試過程中經(jīng)常遇到文件上傳的功能,文件的大小邊界值測試一直沒有好的解決辦法,這里我分享一個(gè)創(chuàng)建文件的腳本希望對大家有幫助。
demo
''' * Create by dell on 2020/7/10 * Author :wencheng * 微信公眾 :自動(dòng)化測試 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', '') # 獲取當(dāng)前的username return username# 獲取時(shí)間和日期def getnowdatatime(flag=0): ’’’ flag = 0為時(shí)間和日期 eg:2018-04-11 10:04:55 flag = 1僅獲取日期 eg:2018-04-11 flag = 2僅獲取時(shí)間 eg:10:04:55 flag = 3純數(shù)字的日期和時(shí)間 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(’只能輸入整數(shù),請重新輸入!’) continue else: fileSize = int(size) break if fileSize >= 200: print(’正在生成TXT文件,請稍候... ...’) # 生成指定大小的TXT檔 filename = getnowdatatime(3) + ’_’ + size + ’MB.txt’ print(f’文件名:{filename}’) # 設(shè)置文件保存的路徑 filepath = ’C:Users’ + getusername() + ’Desktop’ f = open(filepath + filename, ’w’) # 獲取開始時(shí)間 starttime = getnowdatatime() startclock = time.clock() for i in range(fileSize): if i >= 100: if i % 100 == 0:print(f’已生成{i//100 * 100}MB數(shù)據(jù).’) 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’開始時(shí)間:{starttime}’) print(f’結(jié)束時(shí)間:{getnowdatatime()}’) print(f’總共耗時(shí):{(time.clock() - startclock):<.3}sec.’)if __name__ == ’__main__’: generateTXTFile()
創(chuàng)建1M文件
創(chuàng)建100M文件
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Android打包篇:Android Studio將代碼打包成jar包教程2. Python使用urlretrieve實(shí)現(xiàn)直接遠(yuǎn)程下載圖片的示例代碼3. SpringBoot+TestNG單元測試的實(shí)現(xiàn)4. Springboot 全局日期格式化處理的實(shí)現(xiàn)5. vue實(shí)現(xiàn)web在線聊天功能6. 解決Android Studio 格式化 Format代碼快捷鍵問題7. 完美解決vue 中多個(gè)echarts圖表自適應(yīng)的問題8. JavaScript實(shí)現(xiàn)頁面動(dòng)態(tài)驗(yàn)證碼的實(shí)現(xiàn)示例9. Java使用Tesseract-Ocr識(shí)別數(shù)字10. JavaEE SpringMyBatis是什么? 它和Hibernate的區(qū)別及如何配置MyBatis
