在测试的日常工作中,我们经常会需要测试上传文件的边界值。今天分享一段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()