最近項目比較緊,項目已經進入後期,那更是緊,測試忙的不可開交,本來是測試人員的任務,而自己又是新人,所以老大交給我一個任務,就是檢測開發完成Win8平台的一個項目是否存在記憶體泄露,使用windows內建的perfmon.msc進行監測,同時記錄監測資料,由於測試案例不是很多,所以,就需要對同一樣的測試案例進行多次複製,然後放在同一目錄下,然後由程式後台反覆開啟。但是,在windows8中,在同一檔案進行多次複製,會出現檔案的命名就是在原檔案後面簡單的加一個副本(1),但是,如果是這樣的話,就會出現同樣大小的檔案出現排列在一起,使用Windows8內建的排序功能,是無法將檔案排序成亂序的,如果是這樣,會對程式的監控帶來誤差。假如,如果一系列比較大的檔案在一起,使用程式開啟檔案,會出現記憶體的浮動,而這種浮動存在不穩定性,對測試造成誤差,這是無法容忍的。所以,最好的辦法就是對所有檔案進行重新命名,隨機命名,然後,就能按照這種方式打亂排序,然後在進行測試。
程式Demo如下:
#RenameRand.py#Yanggd 2012/9/7#get file name, and then rename the file#after renamed, the name likes this:[a-zA-Z][a-zA-Z][0-9][0-9][a-zA-Z][0-9]import randomimport osexistName = []def renameRand(path): fileList = os.listdir(path) #list the file name rangeLetter=('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ') for oldFileNameAndExt in fileList: newFileName = random.choice(rangeLetter)+random.choice(rangeLetter)+ \ str(random.randrange(10))+str(random.randrange(10))+random.choice(rangeLetter)+str(random.randrange(10)) while newFileName.upper() in existName: newFileName = random.choice(rangeLetter) + random.choice(rangeLetter)+ \ str(random.randrange(10))+str(random.randrange(10))+random.choice(rangeLetter)+str(random.randrange(10)) existName.append(newFileName.upper()) [oldFileName, fileExt] = oldFileNameAndExt.split('.', 1) newFileNameAndExt = [newFileName, fileExt] newFileNameAndExt = '.'.join(newFileNameAndExt) path = os.path.abspath(path) pathSrc = path + '\\' + oldFileNameAndExt pathDst = path + '\\' + newFileNameAndExt os.rename(pathSrc, pathDst)if __name__ == '__main__': renameRand(r'F:\Practice code\testData\rename')