在測試的日常工作中,我們經常會需要測試上傳文件的邊界值。今天分享一段30行的簡單代碼,可以生成任意大小的文件,方便測試。
file_size=input("請輸入想要生成文件的大小:(單位MB)") class MakeDir: def __init__(self): self.file_path="D:/dir_ytj/" self.file_name="文件大小"+file_size+"MB" new_file_size = file_size.strip() file_size_list = new_file_size.split(".") self.file_size_list = file_size_list def fileSize_making(self): #輸入的文件大小去除首尾空格后切割,如果列表中只有一個數字說明是整數,否則就是小數 if len(self.file_size_list) == 1: self.int_size_mb() print("文件大小{}MB,已存入地址{}".format(file_size,self.file_path)) else: self.int_size_mb() self.float_size_mb() print("文件大小{}MB,已存入地址{}".format(file_size,self.file_path)) def int_size_mb(self): #整數部分用寫入文件w方式 with open(self.file_path+self.file_name,"w") as file: #b-kb-mb文件大小轉化 for i in range(int(self.file_size_list[0])): for j in range(1024): file.write("01"*512) def float_size_mb(self): #小數部分用追加寫入a方法 with open(self.file_path+self.file_name,"a") as file: #獲取小數(單位mb) float_size_mb=float(file_size)-int(self.file_size_list[0]) for i in range(1024): file.write("1"*int(1024*float_size_mb)) #調用生成文件 MakeDir().fileSize_making()