1. 程式人生 > 實用技巧 >excel做資料驅動

excel做資料驅動

#生成指定長度的字串
def generate_random_str(randomlength):
    str = 'zxcvbnmasdfghjklqwertyuiop'
    str_list = [random.choice(str) for i in range(randomlength)]
    random_str=''.join(str_list)
    return random_str
def get_distanceTime(day):
    '''
    Args:
        day: 距離當前時間幾天

    Returns:距離當前時間幾天前時間
    
''' today_ele = datetime.datetime.now().date() return today_ele - datetime.timedelta(days=day)
#傳入檔名,sheet名,用例執行的開始行,結束行,請求引數的列數,響應引數的列數(都是對應的excel行數和列數)
#注意:從excel讀出來的資料都是json格式型別,需要json.load轉換為字典
def get_excelData(filename,sheetName,starcell,endcell,requestRow,responseRow):
    '''
    :param filename: 檔名
    :param sheetName: sheet名
    :param starcell: 開始行
    :param endcell: 結束行
    :param requestRow: 請求引數列
    :param responseRow: 返回引數列
    :return:
    
''' dataList = [] file_path =os.path.dirname(os.path.dirname(__file__))+f'/data/apiData/{filename}' workbook = xlrd.open_workbook(file_path,formatting_info=True) workSheet = workbook.sheet_by_name(sheetName) for cell in range(int(starcell)-1,int(endcell)): requestData = workSheet.cell(cell,int(requestRow)-1).value responseData
= workSheet.cell(cell,int(responseRow)-1).value dataList.append((json.loads(requestData),json.loads(responseData))) return dataList
#隨機生成11位手機號
def phoneNORandomGenerator():
    prelist=["130","131","132","133","134","135","136","137","138","139","147","150","151","152","153","155","156","157","158","159","186","187","188"]
    return random.choice(prelist)+"".join(random.choice("0123456789") for i in range(8))