def fill_the_form_using_the_data_from_the_excel_file(): excel = Files() excel.open_workbook("SalesData.xlsx") sales_reps = excel.read_worksheet_as_table(header=True) excel.close_workbook() for sales_rep in sales_reps: fill_and_submit_the_form_for_one_person(sales_rep)
def main(engine=None): rh = RecordHandler() excel = Files() excel.open_workbook("challenge.xlsx") sheet = excel.read_worksheet_as_table(header=True) engines_to_run = [engine] if engine in engines.keys() else engines.keys() for engine in engines_to_run: rh.set_engine(engine) eval(f"{engines[engine]}(rh, sheet)")
def test_append_to_worksheet_empty_with_headers(fmt): table = Table( [ {"Index": 98, "Date": "today", "Id": "some_value"}, {"Index": 99, "Date": "tomorrow", "Id": "another_value"}, ] ) library = Files() library.create_workbook(fmt=fmt) library.append_rows_to_worksheet(table, header=True) result = library.read_worksheet_as_table() assert len(result) == 3 assert result[0] == ["Index", "Date", "Id"]
myeval( browser, '//input[@ng-reflect-name="labelCompanyName"]', row["Company Name"], ) myeval(browser, '//input[@ng-reflect-name="labelRole"]', row["Role in Company"]) myeval(browser, '//input[@ng-reflect-name="labelAddress"]', row["Address"]) myeval(browser, '//input[@ng-reflect-name="labelEmail"]', row["Email"]) myeval( browser, '//input[@ng-reflect-name="labelPhone"]', str(row["Phone Number"]) ) browser.execute_javascript( """document.querySelector('input[type="submit"]').click();""" ) result = browser.execute_javascript( """return document.querySelector('.message2').textContent;""" ) rh.check_for_new_record(browser, result) browser.close_browser() rh = RecordHandler() excel = Files() excel.open_workbook("challenge.xlsx") sheet = excel.read_worksheet_as_table(header=True) rh.set_engine("playwright") run_with_playwright(rh, sheet) rh.set_engine("rpabrowser") run_with_rpabrowser(rh, sheet)
def main(input_excel): library = Files() library.open_workbook(input_excel) sheets = library.list_worksheets() for sheet in sheets: sheet = sheet.strip() testcases = [] variables = [] tests_text = "" keywords = dict() variable_index = 1 settings_text = f"Documentation Created from sheet {sheet} of {input_excel}\n" table = library.read_worksheet_as_table(name=sheet, header=True) for row in table.iter_dicts(): if row["test case"]: testcasename = row["test case"].title() tests_text += testcasename testcases.append(testcasename) else: keyword_name = row["steps"].title().replace(" ", "_") tests_text += f"{' '*4}{keyword_name.replace('_', ' ')}" if keyword_name not in keywords.keys(): keywords[keyword_name] = 0 argument_count = 0 for idx in range(1, 10): ar = f"arg{idx}" if ar in row.keys() and row[ar]: argument_count += 1 try: converted_list = (str(row[ar]).replace( "[", "").replace("]", "").split(",")) if len(converted_list) > 1: variable_name = f"@{{LIST_{variable_index}}}" variables.append( f"{variable_name}{' '*4}{' '.join(converted_list)}" ) tests_text += ( f"{' '*4}{variable_name.replace('@', '$')}" ) else: tests_text += f"{' '*4}{row[ar]}" except TypeError: pass if argument_count > keywords[keyword_name]: keywords[keyword_name] = argument_count tests_text += "\n" robotfilename = f"{sheet}.robot" print("Creating Robot file:", robotfilename) with open(robotfilename, "w") as robotfile: for tc in testcases: print("\tCreating Test Case:", tc) robotfile.write("*** Settings ***\n" + settings_text) if len(variables) > 0: robotfile.write("\n*** Variables ***\n") for var in variables: robotfile.write(f"{var}\n") if tests_text: robotfile.write("\n*** Test Cases ***\n" + tests_text) if len(keywords) > 0: robotfile.write("\n*** Keywords ***\n") for kw, val in keywords.items(): robotfile.write(kw.replace("_", " ")) if val > 0: robotfile.write("\n\t[Arguments]") for idx in range(1, val + 1): robotfile.write(f"{' '*4}${{arg{idx}}}") robotfile.write("\n") for idx in range(1, val + 1): robotfile.write(f"\tLog{' '*4}${{arg{idx}}}\n") else: robotfile.write("\n\tNo Operation\n")