def handler(event={}, context={}): Driver.setup(event) d1 = Driver.new() d2 = Driver.new() d1.get('https://en.wikipedia.org/wiki/Special:Random') d2.get('https://ja.wikipedia.org/wiki/Special:Random') titleEn = d1.find_element_by_class_name('firstHeading').text titleJa = d2.find_element_by_class_name('firstHeading').text print(titleEn) print(titleJa) d1.quit() d2.quit() return titleEn, titleJa
def loadXmlConfig(self): dataDir = '../data' files = os.listdir(dataDir) xmlFormat = r"^zwcfg_0x[0-9,a-f,A-F]{8}.xml$" for f in files: if re.match(xmlFormat, f) is not None : if f not in self.zwNetworks : self._log.write(LogLevel.Always, self, "Find and loading {0} openzwave file config....".format(dataDir + "/" + f)) xmlData = self.readXmlNetwork(dataDir + "/" + f) driverData = xmlData.getDriver(0) homeId = driverData['homeId'] self.zwNetworks[homeId] = {'xmlData': xmlData} configFile = f.replace('xml', 'json') try : self.zwNetworks[homeId]['configData'] = readJsonFile(dataDir + "/" + configFile) self._log.write(LogLevel.Always, self,"Config for emulation loaded : {0}".format(self.zwNetworks[homeId]['configData'])) except : self._log.write(LogLevel.Error, self,"Error on readind config file for emulation :{0}".format(dataDir + "/" + configFile)) print driverData nodes = self.zwNetworks[homeId]['xmlData'].listeNodes() for node in nodes : xmlNode = self.zwNetworks[homeId]['xmlData'].getNode(node) self.addXmlNode(homeId, xmlNode['id'], xmlNode) self.startVirtualCom(homeId) self.drivers.append(Driver(self, self.getNode(homeId, driverData['nodeId']), driverData)) print " +++ driver added +++" else : self._log.write(LogLevel.Warning, self,"Zwave network allready loaded :{0}".format(f))
def __init__(self, driver): self.elements = Elements() self.driver = Driver(driver=driver) self.data = TestData()
class Actions(Expects): def __init__(self, driver): self.elements = Elements() self.driver = Driver(driver=driver) self.data = TestData() def click_stock_menu(self): return self.driver.find_element_by_name( self.elements.stock_menu).click() def click_orders_button(self): return self.driver.find_element_by_name( self.elements.orders_button).click() @staticmethod def click_radio_option(): return pyautogui.click(418, 791) # return self.driver.find_element_by_id(self.elements.account_radio_button).click() @staticmethod def click_txt_box(value): pyautogui.click(345, 816) return pyautogui.typewrite(value) # self.driver.find_element_by_id(self.elements.enter_product_name).click() # return self.driver.find_element_by_id(self.elements.enter_product_name).send_key(value) def click_select_button(self): return self.driver.find_element_by_id( self.elements.select_button).click() @staticmethod def click_insert_button(): return pyautogui.click(195, 1204) # return self.driver.find_element_by_name(self.elements.insert_button).click() def click_continue_button(self): return self.driver.find_element_by_id( self.elements.continue_button).click() def enter_product_name(self, value): return self.driver.find_element_by_id( self.elements.enter_product_name).send_keys(value) @staticmethod def product_quantity(value): # self.driver.find_element_by_id(self.elements.enter_product_quantity).clear() pyautogui.doubleClick(422, 820) return pyautogui.typewrite(value) def click_find_button(self): for product in self.data.product_names: self.driver.find_element_by_id(self.elements.find_button).click() self.enter_product_name(value=product) self.click_select_button() self.product_quantity( value=self.data.supplier_order_product_quantity) self.driver.find_element_by_id( self.elements.find_next_item).click() return "" def click_accept(self): return self.driver.find_element_by_id( self.elements.select_button).click() def click_update_button(self): return self.driver.find_element_by_id( self.elements.update_button).click() def click_yes_button(self): return self.driver.find_element_by_id(self.elements.yes_button).click() def click_no_button(self): return self.driver.find_element_by_id(self.elements.no_button).click() @staticmethod def click_close_button(): pyautogui.click(871, 1208) # return self.driver.find_element_by_name(self.elements.close_button).click() def click_radio_button(self): return self.driver.find_element_by_id( self.elements.account_radio_button).click() def click_text_field(self, value): self.driver.find_element_by_id( self.elements.enter_product_name).click() self.driver.find_element_by_id( self.elements.enter_product_name).send_keys(value) def order_number_text(self, value): return self.driver.find_element_by_id( self.elements.order_number).send_keys(value) def transaction_option(self): return self.driver.find_element_by_name( self.elements.transactions).click() def supplier_receipts_option(self): return self.driver.find_element_by_name( self.elements.supplier_receipts).click() def enter_reference1(self, value): return self.driver.find_element_by_id( self.elements.reference_number1).send_keys(value) def enter_reference2(self, value): return self.driver.find_element_by_id( self.elements.reference_number2).send_keys(value) def click_check_box(self): return self.driver.find_element_by_id(self.elements.check_box).click() def enter_total_amount(self, value): self.driver.find_element_by_id(self.elements.total_amount).clear() return self.driver.find_element_by_id( self.elements.total_amount).send_keys(value) # @staticmethod # def scrape_total(): # pyautogui.doubleClick(882, 276) # return pyautogui.hotkey('ctrl', 'c') def supplier_orders(self): time.sleep(5) self.click_stock_menu() self.click_orders_button() time.sleep(2) self.click_radio_option() time.sleep(2) self.click_txt_box(value=self.data.creditor_code[0]) self.click_select_button() time.sleep(3) self.click_insert_button() self.click_continue_button() self.click_find_button() self.click_accept() scrape = self.driver.get_attribute_by_id( element=self.elements.total_amount, attribute='value') time.sleep(3) self.click_update_button() self.click_yes_button() self.click_no_button() self.click_no_button() self.click_close_button() query = select_query_builder2( "ORDNO", "[POSWINSQL_PTA_QA].[dbo].[CRORDHD]", "WHERE ACCOUNT = '3' AND ODATE = Convert(DATE, GetDate())", "DESC") result = self.run_query(query=query) self.click_stock_menu() self.transaction_option() self.supplier_receipts_option() self.click_radio_button() self.click_text_field(value=self.data.creditor_code) self.click_select_button() self.order_number_text(value=result[0]) self.enter_reference1(value="651000") self.enter_reference2(value="100") self.click_check_box() self.enter_total_amount(scrape) self.click_continue_button() return result # time.sleep(10) # SELECT TOP 10 ORDNO FROM [POSWINSQL_PTA_QA].[dbo].[CRORDHD] # WHERE ACCOUNT = '3' AND ODATE = Convert(DATE, GetDate()) # ORDER BY ORDNO DESC;
def runTest(): Driver.runSequentialTest()
self._log.critical(msg) else: self._log.debug(msg) if __name__ == "__main__": from manager import Manager from lib.driver import Driver from node import Node from lib.values import Value from options import Options l = Log() print l l.create("", False, True, LogLevel.Debug, LogLevel.Debug, LogLevel.Debug) l2 = Log() print l, l2 l.write(LogLevel.Debug, "Test de log debug") o = Options() o.create("../openzwave/config", "", "--logging true --LogFileName toto.txt") o.Lock() m = Manager() l2.write(LogLevel.Debug, Node(m, 12554, 5), "Test de log debug avec", " l2") LOG.write(LogLevel.Info, Value(Node(m, 12554, 8), 55), "Refresh Value Test de log info avec LOG") LOG.write(LogLevel.Warning, m, "Test de log warning avec LOG") LOG.write(LogLevel.Warning, Driver(m, "/dev/zwave", ""), "Test de log warning avec LOG")
class Actions(Expects): def __init__(self, driver): self.elements = Elements() self.driver = Driver(driver=driver) self.data = TestData() def click_on_register_link(self): return self.driver.find_element_by_xpath( self.elements.register).click() def enter_first_name(self, value): self.driver.find_element_by_name(self.elements.first_name).click() return self.driver.find_element_by_name( self.elements.first_name).send_keys(value) def enter_last_name(self, value): self.driver.find_element_by_name(self.elements.last_name).click() return self.driver.find_element_by_name( self.elements.last_name).send_keys(value) def enter_phone_number(self, value): self.driver.find_element_by_name(self.elements.phone).click() return self.driver.find_element_by_name( self.elements.phone).send_keys(value) def enter_email_address(self, value): self.driver.find_element_by_name(self.elements.email_address).click() return self.driver.find_element_by_name( self.elements.email_address).send_keys(value) def enter_address(self, value): self.driver.find_element_by_name(self.elements.address).click() return self.driver.find_element_by_name( self.elements.address).send_keys(value) def enter_city(self, value): self.driver.find_element_by_name(self.elements.city).click() return self.driver.find_element_by_name( self.elements.city).send_keys(value) def enter_state_province(self, value): self.driver.find_element_by_name(self.elements.state_province).click() return self.driver.find_element_by_name( self.elements.state_province).send_keys(value) def enter_postal_code(self, value): self.driver.find_element_by_name(self.elements.postal_code).click() return self.driver.find_element_by_name( self.elements.postal_code).send_keys(value) def enter_country(self, value): self.driver.find_element_by_name(self.elements.country).click() return self.driver.find_element_by_name( self.elements.country).send_keys(value) def enter_user_name(self, value): self.driver.find_element_by_id(self.elements.user_name).click() return self.driver.find_element_by_id( self.elements.user_name).send_keys(value) def enter_password(self, value): self.driver.find_element_by_name(self.elements.password).click() return self.driver.find_element_by_name( self.elements.password).send_keys(value) def enter_confirm_password(self, value): self.driver.find_element_by_name( self.elements.confirm_password).click() return self.driver.find_element_by_name( self.elements.confirm_password).send_keys(value) def click_submit_btn(self): return self.driver.find_element_by_name( self.elements.submit_query_btn).click() def enter_user_name_landing_page(self, value): self.driver.find_element_by_name( self.elements.user_name_landing_page).click() return self.driver.find_element_by_name( self.elements.user_name_landing_page).send_keys(value) def enter_password_landing_page(self, value): self.driver.find_element_by_name( self.elements.password_landing_page).click() return self.driver.find_element_by_name( self.elements.password_landing_page).send_keys() def click_submit_btn_landing_page(self): return self.driver.find_element_by_name( self.elements.submit_btn_landing_page).click() def click_home_link(self): return self.driver.find_element_by_xpath( self.elements.home_link).click() def find_note_register_page(self): return self.driver.find_element_by_xpath(self.elements.note).text def web_page(self): self.click_on_register_link() self.enter_first_name(value=self.data.register_first_name) self.enter_last_name(value=self.data.register_last_name) self.enter_phone_number(value=self.data.phone) self.enter_email_address(value=self.data.email_address) self.enter_address(value=self.data.address) self.enter_city(value=self.data.city) self.enter_state_province(value=self.data.state_province) self.enter_postal_code(value=self.data.postal_code) self.driver.drop_down_menu(element=self.elements.country, text=self.data.country_text) self.enter_user_name(value=self.data.username) self.enter_password(value=self.data.password) self.enter_confirm_password(value=self.data.password) self.click_submit_btn() get_text = self.find_note_register_page() return self.data.username, get_text