def in_login(self, login, password): try: lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 login_planshet(self, login, password+'4', lang) if lang == 0: zvonok = self.driver.find_element_by_id('Request a call back') elif lang == 1: zvonok = self.driver.find_element_by_id('Заказать звонок из банка') elif lang == 2: zvonok = self.driver.find_element_by_id('Замовити дзвінок з банку') self.assertTrue(zvonok) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_24.png' self.driver.save_screenshot(directory + file_name) raise
def no_auth(self, login, password): try: rules(1, login) lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 try: # login(self, lang) login_planshet(self, login, password, lang) except NoSuchElementException: pass if lang == 0: self.assertTrue( self.driver.find_element_by_id( "It is impossible to log in to the system, because you do not have rights to enter the system." )) elif lang == 1: self.assertTrue( self.driver.find_element_by_id( 'Подключение к системе невозможно, так как у вас нет прав на вход в систему.' )) elif lang == 2: self.assertTrue( self.driver.find_element_by_id( 'Підключення до системи неможливе, у вас немає прав на вхід у систему.' )) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_14.png' self.driver.save_screenshot(directory + file_name) raise finally: rules(1, login)
def rule_20(self, login, password): try: rules(20, login) lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 try: # login(self, lang) login_planshet(self, login, password, lang) except NoSuchElementException: pass if lang == 0: self.assertTrue( self.driver.find_element_by_id( "The user doesn't have enough rights to finish the action") ) elif lang == 1: self.assertTrue( self.driver.find_element_by_id( 'У пользователя недостаточно прав для завершения данного действия' )) elif lang == 2: self.assertTrue( self.driver.find_element_by_id( 'У користувача недостатньо прав для завершення даної дії')) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_15.png' self.driver.save_screenshot(directory + file_name) raise finally: rules(20, login)
def block(self, login, password): try: user_block(login) lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 try: # login(self, lang) login_planshet(self, login, password, lang) except NoSuchElementException: pass if lang == 0: self.assertTrue( self.driver.find_element_by_id( "The specified user has been blocked. Contact the bank.")) elif lang == 1: self.assertTrue( self.driver.find_element_by_id( 'Заданный пользователь заблокирован. Обратитесь в банк.')) elif lang == 2: self.assertTrue( self.driver.find_element_by_id( 'Зазначеного користувача заблоковано. Зверніться до банку.' )) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_16.png' self.driver.save_screenshot(directory + file_name) raise finally: user_block(login)
def dep_save(self, login, password): try: # f_id = first_id() lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass self.driver.find_element_by_id('Available on accounts:').click() self.driver.find_element_by_id('Available on cards:').click() self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther[3]' ).click() sleep(1) self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther[4]' ).click() depop = self.driver.find_element_by_id('OPEN DEPOSIT') depop.click() saving = self.driver.find_element_by_id('Savings deposit') saving.click() valuta = self.driver.find_element_by_id('UAH') valuta.click() sleep(10) self.driver.find_element_by_id('bankListicon').click() sleep(1) deptype = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell' ) deptype.click() ok_btn = self.driver.find_element_by_id('navBarOk') ok_btn.click() f_id = first_id(login) third_step = self.driver.find_element_by_id('navBarNext') third_step.click() sleep(2) third_step.click() sleep(30) ok_btn = self.driver.find_element_by_id('navBarOk') ok_btn.click() sleep(3) sms_code = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther[2]/XCUIElementTypeAlert/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeCollectionView/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeTextField' ) sms_code.send_keys(find_sms(f_id, login)) # sms_code.send_keys(123456) conf = self.driver.find_element_by_id('Confirm') conf.click() sleep(30) self.assertTrue( self.driver.find_element_by_id( 'The request for depositing money sent to the bank. You can check the request state in the list of requests.' )) elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass self.driver.find_element_by_id('Доступно на счетах:').click() self.driver.find_element_by_id('Доступно на картах:').click() self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther[3]' ).click() sleep(1) self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther[4]' ).click() depop = self.driver.find_element_by_id('ОТКРЫТЬ ДЕПОЗИТ') depop.click() saving = self.driver.find_element_by_id('Сберегательный депозит') saving.click() valuta = self.driver.find_element_by_id('UAH') valuta.click() sleep(10) self.driver.find_element_by_id('bankListicon').click() sleep(1) deptype = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell' ) deptype.click() ok_btn = self.driver.find_element_by_id('navBarOk') ok_btn.click() f_id = first_id(login) third_step = self.driver.find_element_by_id('navBarNext') third_step.click() sleep(2) third_step.click() sleep(30) ok_btn = self.driver.find_element_by_id('navBarOk') ok_btn.click() sleep(3) sms_code = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther[2]/XCUIElementTypeAlert/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeCollectionView/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeTextField' ) sms_code.send_keys(find_sms(f_id, login)) # sms_code.send_keys(123456) conf = self.driver.find_element_by_id('Подтвердить') conf.click() sleep(30) self.assertTrue( self.driver.find_element_by_id( 'Заявка на открытие депозита отправлена в банк. Статус заявки можно проконтролировать в списке заявок.' )) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass self.driver.find_element_by_id('Доступно на рахунках').click() self.driver.find_element_by_id('Доступно на картах').click() self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther[3]' ).click() sleep(1) self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther[4]' ).click() depop = self.driver.find_element_by_id('ВІДКРИТИ ДЕПОЗИТ') depop.click() saving = self.driver.find_element_by_id('Ощадний депозит') saving.click() valuta = self.driver.find_element_by_id('UAH') valuta.click() sleep(10) self.driver.find_element_by_id('bankListicon').click() sleep(1) deptype = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell' ) deptype.click() ok_btn = self.driver.find_element_by_id('navBarOk') ok_btn.click() f_id = first_id(login) third_step = self.driver.find_element_by_id('navBarNext') third_step.click() sleep(2) third_step.click() sleep(30) ok_btn = self.driver.find_element_by_id('navBarOk') ok_btn.click() sleep(3) sms_code = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther[2]/XCUIElementTypeAlert/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeCollectionView/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeTextField' ) sms_code.send_keys(find_sms(f_id, login)) # sms_code.send_keys(123456) conf = self.driver.find_element_by_id('Підтвердити') conf.click() sleep(30) self.assertTrue( self.driver.find_element_by_id( 'Заявка на відкриття депозиту відправлена в банк. Статус заявки ви можете проконтролювати у списку заявок.' )) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_53.png' self.driver.save_screenshot(directory + file_name) raise
def rule_17and18(self, login, password): try: rules(17, login) rules(18, login) lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Transfers') bil.click() new_trans = self.driver.find_element_by_id('New transfers') new_trans.click() try: self.driver.find_element_by_id('Between own accounts') raise NameError('Payments present') except NoSuchElementException: return True elif lang == 1: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Переводы') bil.click() new_trans = self.driver.find_element_by_id('Новый платеж') new_trans.click() try: self.driver.find_element_by_id('Между своими счетами') raise NameError('Payments present') except NoSuchElementException: return True elif lang == 2: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Перекази') bil.click() new_trans = self.driver.find_element_by_id('Новий переказ') new_trans.click() try: self.driver.find_element_by_id('Між своїми рахунками') raise NameError('Payments present') except NoSuchElementException: return True except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_21.png' self.driver.save_screenshot(directory + file_name) raise finally: rules(17, login) rules(18, login)
def wrong_sms(self, login, password): try: # f_id = first_id() lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Transfers') bil.click() new_trans = self.driver.find_element_by_id('New transfers') new_trans.click() scheta = self.driver.find_element_by_id('Between own accounts') scheta.click() new_schet = self.driver.find_element_by_id('New') new_schet.click() account = self.driver.find_element_by_id('From account') account.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) > 4: print re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w1, "toVisible": True }) w1.click() break elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0]) > 4: print re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w, "toVisible": True }) w.click() break credit = self.driver.find_element_by_id('navBarNext') credit.click() sleep(7) account2 = self.driver.find_element_by_id('To the account') account2.click() self.driver.find_element_by_id('Done').click() sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): # if len(re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) > 3: print re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w1, "toVisible": True }) w1.click() break elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): # if len(re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0]) > 3: print re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w, "toVisible": True }) w.click() break vvod = self.driver.find_element_by_id('navBarNext') vvod.click() sleep(2) sum = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther' '/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther' '/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) sum.send_keys(1) third_step = self.driver.find_element_by_id('navBarNext') third_step.click() ok_btn = self.driver.find_element_by_id('navBarOk') ok_btn.click() sleep(5) sms_code = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow[3]/XCUIElementTypeOther[2]/XCUIElementTypeAlert/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeCollectionView/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeSecureTextField' ) # sms_code.send_keys(find_sms(f_id)) sms_code.send_keys(123457) conf = self.driver.find_element_by_id('Confirm') conf.click() self.assertTrue( self.driver.find_element_by_id( 'Confirmation code is incorrect')) elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() perevodi = self.driver.find_element_by_id('Переводы') perevodi.click() perevodi = self.driver.find_element_by_id('Новый платеж') perevodi.click() scheta = self.driver.find_element_by_id('Между своими счетами') scheta.click() new_schet = self.driver.find_element_by_id('Новый') new_schet.click() account = self.driver.find_element_by_id('Со счета') account.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) > 4: print re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w1, "toVisible": True }) w1.click() break elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0]) > 4: print re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w, "toVisible": True }) w.click() break credit = self.driver.find_element_by_id('navBarNext') credit.click() sleep(7) account2 = self.driver.find_element_by_id('На счет') account2.click() self.driver.find_element_by_id('Done').click() sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): # if len(re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) > 3: print re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w1, "toVisible": True }) w1.click() break elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): # if len(re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0]) > 3: print re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w, "toVisible": True }) w.click() break vvod = self.driver.find_element_by_id('navBarNext') vvod.click() sleep(2) sum = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther' '/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther' '/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) sum.send_keys(1) third_step = self.driver.find_element_by_id('navBarNext') third_step.click() ok_btn = self.driver.find_element_by_id('navBarOk') ok_btn.click() sleep(5) sms_code = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow[3]/XCUIElementTypeOther[2]/XCUIElementTypeAlert/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeCollectionView/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeSecureTextField' ) # sms_code.send_keys(find_sms(f_id)) sms_code.send_keys(123457) conf = self.driver.find_element_by_id('Подтвердить') conf.click() self.assertTrue( self.driver.find_element_by_id('Неверный код подтверждения')) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Перекази') bil.click() new_trans = self.driver.find_element_by_id('Новий переказ') new_trans.click() scheta = self.driver.find_element_by_id('Між своїми рахунками') scheta.click() new_schet = self.driver.find_element_by_id('Новий') new_schet.click() account = self.driver.find_element_by_id('З рахунку') account.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) > 4: print re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w1, "toVisible": True }) w1.click() break elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0]) > 4: print re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w, "toVisible": True }) w.click() break credit = self.driver.find_element_by_id('navBarNext') credit.click() sleep(7) account2 = self.driver.find_element_by_id('На рахунок') account2.click() self.driver.find_element_by_id('Done').click() sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): # if len(re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) > 3: print re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w1, "toVisible": True }) w1.click() break elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): # if len(re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0]) > 3: print re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w, "toVisible": True }) w.click() break vvod = self.driver.find_element_by_id('navBarNext') vvod.click() sleep(2) sum = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther' '/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther' '/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) sum.send_keys(1) third_step = self.driver.find_element_by_id('navBarNext') third_step.click() ok_btn = self.driver.find_element_by_id('navBarOk') ok_btn.click() sleep(5) sms_code = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow[3]/XCUIElementTypeOther[2]/XCUIElementTypeAlert/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeCollectionView/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeSecureTextField' ) # sms_code.send_keys(find_sms(f_id)) sms_code.send_keys(123457) conf = self.driver.find_element_by_id('Підтвердити') conf.click() self.assertTrue( self.driver.find_element_by_id('Невірний код підтвердження')) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_51.png' self.driver.save_screenshot(directory + file_name) raise
def rule_46(self, login, password): try: rules(46, login) lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() try: self.driver.find_element_by_id('Cards') raise NameError('Cards present') except NoSuchElementException: return True elif lang == 1: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() try: self.driver.find_element_by_id('Карты') raise NameError('Cards present') except NoSuchElementException: return True elif lang == 2: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() try: self.driver.find_element_by_id('Картки') raise NameError('Cards present') except NoSuchElementException: return True except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_22.png' self.driver.save_screenshot(directory + file_name) raise finally: rules(46, login)
def cards_active(self, login, password): try: lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) cards_req() if lang == 0: try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass sleep(5) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') acc = [] unacc = [] tree = ET.parse('/Users/admin/PycharmProjects/OTP/xmls/enc_data.xml') root = tree.getroot() for i in root.iter('AccountDetails'): if i.find('Type').text == 'CARD': if i.find('Card').find('State').text == 'ACTIVE': acc.append(i.find('Card').find('CardNo').text) else: unacc.append(i.find('Card').find('CardNo').text) ac_appl = [] for i in sp: self.driver.implicitly_wait(3) try: w = i.find_element_by_xpath('//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') if re.findall(r'\d{6}\*{6}\d{4}', w.get_attribute('name').replace(' ', '')): ac_appl.append(w.get_attribute('name').replace(' ', '')) else: pass except: pass for i in ac_appl: if i in acc: pass else: raise NameError('UnActive in active') elif lang == 1: try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass sleep(5) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') acc = [] unacc = [] tree = ET.parse('/Users/admin/PycharmProjects/OTP/xmls/enc_data.xml') root = tree.getroot() for i in root.iter('AccountDetails'): if i.find('Type').text == 'CARD': if i.find('Card').find('State').text == 'ACTIVE': acc.append(i.find('Card').find('CardNo').text) else: unacc.append(i.find('Card').find('CardNo').text) ac_appl = [] for i in sp: self.driver.implicitly_wait(3) try: w = i.find_element_by_xpath('//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') if re.findall(r'\d{6}\*{6}\d{4}', w.get_attribute('name').replace(' ', '')): ac_appl.append(w.get_attribute('name').replace(' ', '')) else: pass except: pass for i in ac_appl: if i in acc: pass else: raise NameError('UnActive in active') elif lang == 2: try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass sleep(5) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') acc = [] unacc = [] tree = ET.parse('/Users/admin/PycharmProjects/OTP/xmls/enc_data.xml') root = tree.getroot() for i in root.iter('AccountDetails'): if i.find('Type').text == 'CARD': if i.find('Card').find('State').text == 'ACTIVE': acc.append(i.find('Card').find('CardNo').text) else: unacc.append(i.find('Card').find('CardNo').text) ac_appl = [] for i in sp: self.driver.implicitly_wait(3) try: w = i.find_element_by_xpath('//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') if re.findall(r'\d{6}\*{6}\d{4}', w.get_attribute('name').replace(' ', '')): ac_appl.append(w.get_attribute('name').replace(' ', '')) else: pass except: pass for i in ac_appl: if i in acc: pass else: raise NameError('UnActive in active') except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_15.png' self.driver.save_screenshot(directory + file_name) raise
def accounts_cards_rule13(self, login, password): try: # acc_rule13(login) lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass sleep(3) acc = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther/XCUIElementTypeStaticText' ) number = re.findall(r'\(\d+\)', acc.get_attribute('value'))[0] count = number.strip(')').lstrip('(') acc_rule13(login) sleep(5) refresh = self.driver.find_element_by_id('buttonRefreshNormal') refresh.click() sleep(5) number2 = re.findall( r'\(\d+\)', self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther/XCUIElementTypeStaticText' ).get_attribute('Value'))[0] count2 = number2.strip(')').lstrip('(') if count2 != count: return True else: raise NameError('Account still displayed') elif lang == 1: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass sleep(3) acc = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther/XCUIElementTypeStaticText' ) number = re.findall(r'\(\d+\)', acc.get_attribute('value'))[0] count = number.strip(')').lstrip('(') acc_rule13(login) sleep(5) refresh = self.driver.find_element_by_id('buttonRefreshNormal') refresh.click() sleep(5) number2 = re.findall( r'\(\d+\)', self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther/XCUIElementTypeStaticText' ).get_attribute('Value'))[0] count2 = number2.strip(')').lstrip('(') if count2 != count: return True else: raise NameError('Account still displayed') elif lang == 2: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass sleep(3) acc = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther/XCUIElementTypeStaticText' ) number = re.findall(r'\(\d+\)', acc.get_attribute('value'))[0] count = number.strip(')').lstrip('(') acc_rule13(login) sleep(5) refresh = self.driver.find_element_by_id('buttonRefreshNormal') refresh.click() sleep(5) number2 = re.findall( r'\(\d+\)', self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther/XCUIElementTypeStaticText' ).get_attribute('Value'))[0] count2 = number2.strip(')').lstrip('(') if count2 != count: return True else: raise NameError('Account still displayed') except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_26.png' self.driver.save_screenshot(directory + file_name) raise finally: acc_rule13(login)
def busy_log(self, login, password): dt = 'HENDRIX' try: lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Settings') set.click() ch_psw = self.driver.find_element_by_id('Change login') ch_psw.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField') conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]') conf_lgn.send_keys(dt) new_lgn.send_keys(dt) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertTrue(self.driver.find_element_by_id("Such login has already been registered in the system. Please create another login.")) elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Настройки') set.click() ch_lgn = self.driver.find_element_by_id('Смена логина') ch_lgn.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField') conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]') conf_lgn.send_keys(dt) new_lgn.send_keys(dt) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertTrue(self.driver.find_element_by_id("Такой логин уже зарегистрирован в системе. Пожалуйста, придумайте другой логин.")) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Налаштування') set.click() ch_psw = self.driver.find_element_by_id('Зміна логін') ch_psw.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField') conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]') conf_lgn.send_keys(dt) new_lgn.send_keys(dt) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertTrue(self.driver.find_element_by_id("Такий логін вже зареєстровано в системі. Будь ласка, придумайте інший логин.")) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_47.png' self.driver.save_screenshot(directory + file_name) raise
def validation_log(self, login, password): new = 'qwerty1' conf = 'qwerty2' try: lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Settings') set.click() ch_psw = self.driver.find_element_by_id('Change login') ch_psw.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField') conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]') appl = self.driver.find_element_by_id('navBarOk') appl.click() self.assertTrue(self.driver.find_element_by_id( 'The login should be 6 to 50 characters long (Latin symbols, numbers 0-9, symbols @ _ ~)')) self.driver.find_element_by_id('OK').click() conf_lgn.send_keys(new) new_lgn.send_keys(conf) appl.click() self.assertTrue(self.driver.find_element_by_id( 'Make sure that values of the fields «New login» and «Confirm New login» are identical')) elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Настройки') set.click() ch_lgn = self.driver.find_element_by_id('Смена логина') ch_lgn.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField') conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]') appl = self.driver.find_element_by_id('navBarOk') appl.click() self.assertTrue(self.driver.find_element_by_id('Логин должен содержать от 6 до 50 символов (латинские буквы, цифры 0-9, символы @ _ ~)')) self.driver.find_element_by_id('OK').click() conf_lgn.send_keys(new) new_lgn.send_keys(conf) appl.click() self.assertTrue(self.driver.find_element_by_id( 'Значения полей «Новый логин» и «Подтвердить логин» должны совпадать')) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Налаштування') set.click() ch_psw = self.driver.find_element_by_id('Зміна логін') ch_psw.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField') conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]') appl = self.driver.find_element_by_id('navBarOk') appl.click() sleep(2) print self.driver.find_element_by_xpath('/XCUIElementTypeApplication/XCUIElementTypeWindow[4]/XCUIElementTypeOther[2]/XCUIElementTypeAlert/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeStaticText[2]').get_attribute('name') self.assertTrue(self.driver.find_element_by_id('Логін має містити від 6 до 50 символів (латинські літери, цифри 0-9, символи @ _ ~)')) self.driver.find_element_by_id('OK').click() conf_lgn.send_keys(new) new_lgn.send_keys(conf) appl.click() self.assertTrue(self.driver.find_element_by_id( 'Значення полів «Новий логін» та «Підтвердити логін» мають співпадати')) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_50.png' self.driver.save_screenshot(directory + file_name) raise
def space_psw(self, login, password): try: dt = '12 3' lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Settings') set.click() ch_psw = self.driver.find_element_by_id('Change password') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField') conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField') conf_psw.send_keys(dt) new_psw.send_keys(dt) sleep(3) psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField') self.assertTrue(len(psw.get_attribute('value')) == 3) elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Настройки') set.click() ch_psw = self.driver.find_element_by_id('Смена пароля') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField') conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField') conf_psw.send_keys(dt) new_psw.send_keys(dt) sleep(3) psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField') self.assertTrue(len(psw.get_attribute('value')) == 3) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Налаштування') set.click() ch_psw = self.driver.find_element_by_id('Зміна паролю') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField') conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField') conf_psw.send_keys(dt) new_psw.send_keys(dt) sleep(3) psw = self.driver.find_element_by_xpath('/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField') self.assertTrue(len(psw.get_attribute('value')) == 3) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_45.png' self.driver.save_screenshot(directory + file_name) raise
def latin_log(self, login, password): dt = U'Привет123' try: # f_id = first_id() lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Settings') set.click() ch_psw = self.driver.find_element_by_id('Change login') ch_psw.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField') conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]') conf_lgn.send_keys(dt) new_lgn.send_keys(dt) inp = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField').get_attribute( 'value') self.assertTrue(inp == '123') elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Настройки') set.click() ch_lgn = self.driver.find_element_by_id('Смена логина') ch_lgn.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField') conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]') conf_lgn.send_keys(dt) new_lgn.send_keys(dt) inp = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField').get_attribute('value') self.assertTrue(inp == '123') elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Налаштування') set.click() ch_psw = self.driver.find_element_by_id('Зміна логін') ch_psw.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField') conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]') conf_lgn.send_keys(dt) new_lgn.send_keys(dt) inp = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField').get_attribute( 'value') self.assertTrue(inp == '123') except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_48.png' self.driver.save_screenshot(directory + file_name) raise
def accounts_mask(self, login, password): try: lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Transfers') bil.click() new_trans = self.driver.find_element_by_id('New transfers') new_trans.click() scheta = self.driver.find_element_by_id('Between own accounts') scheta.click() new_schet = self.driver.find_element_by_id('New') new_schet.click() account = self.driver.find_element_by_id('From account') account.click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = re.findall( r'\d{11,}', i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText'). get_attribute('name')) w1 = re.findall( r'\d{11,}', i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[2]'). get_attribute('name')) if w: print w[0] if w == re.findall(r'2625\d{6,}', w[0]): raise NameError('we got 2625 acc') elif w1: print w1 if w1 == re.findall(r'2625\d{6,}', w1[0]): raise NameError('we got 2625 acc') elif lang == 1: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() perevodi = self.driver.find_element_by_id('Переводы') perevodi.click() perevodi = self.driver.find_element_by_id('Новый платеж') perevodi.click() scheta = self.driver.find_element_by_id('Между своими счетами') scheta.click() new_schet = self.driver.find_element_by_id('Новый') new_schet.click() schet_switch = self.driver.find_element_by_id('Со счета') schet_switch.click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = re.findall( r'\d{11,}', i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText'). get_attribute('name')) w1 = re.findall( r'\d{11,}', i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[2]'). get_attribute('name')) if w: print w[0] if w == re.findall(r'2625\d{6,}', w[0]): raise NameError('we got 2625 acc') elif w1: print w1 if w1 == re.findall(r'2625\d{6,}', w1[0]): raise NameError('we got 2625 acc') elif lang == 2: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Перекази') bil.click() new_trans = self.driver.find_element_by_id('Новий переказ') new_trans.click() scheta = self.driver.find_element_by_id('Між своїми рахунками') scheta.click() new_schet = self.driver.find_element_by_id('Новий') new_schet.click() account = self.driver.find_element_by_id('З рахунку') account.click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = re.findall( r'\d{11,}', i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText'). get_attribute('name')) w1 = re.findall( r'\d{11,}', i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[2]'). get_attribute('name')) if w: if w == re.findall(r'2625\d{6,}', w[0]): raise NameError('we got 2625 acc') elif w1: if w1 == re.findall(r'2625\d{6,}', w1[0]): raise NameError('we got 2625 acc') except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_27.png' self.driver.save_screenshot(directory + file_name) raise
def cards_disable(self, login, password): try: rules(46, login) lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(10) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass sleep(4) try: cards = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther[2]/XCUIElementTypeStaticText[3]' ) s = cards.get_attribute('name') if s.split(' ')[0].encode('utf-8') == 'CARDS': raise NameError('Cards present') else: return True except NoSuchElementException: return True elif lang == 1: self.driver.implicitly_wait(10) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass sleep(4) try: cards = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther[2]/XCUIElementTypeStaticText[3]' ) s = cards.get_attribute('name') if s.split(' ')[0].encode('utf-8') == 'КАРТЫ': raise NameError('Cards present') else: return True except NoSuchElementException: return True elif lang == 2: self.driver.implicitly_wait(5) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass sleep(4) try: cards = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeOther[2]/XCUIElementTypeStaticText[3]' ) s = cards.get_attribute('name') if s.split(' ')[0].encode('utf-8') == 'КАРТИ': raise NameError('Cards present') else: return True except NoSuchElementException: return True except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_22.png' self.driver.save_screenshot(directory + file_name) raise finally: rules(46, login)
def rule_82(self, login, password): try: rules(82, login) lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass try: self.driver.find_element_by_id('OPEN DEPOSIT') raise NameError('Deposit can been open') except NoSuchElementException: return True elif lang == 1: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass try: self.driver.find_element_by_id('ОТКРЫТЬ ДЕПОЗИТ') raise NameError('Deposit can been open') except NoSuchElementException: return True elif lang == 2: self.driver.implicitly_wait(15) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass try: self.driver.find_element_by_id('ВІДКРИТИ ДЕПОЗИТ') raise NameError('Deposit can been open') except NoSuchElementException: return True except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_23.png' self.driver.save_screenshot(directory + file_name) raise finally: rules(82, login)
def change_psw(self, login, password): th = "".join([random.choice(string.letters) for i in xrange(85)]) tx = "".join([random.choice(string.letters) for i in xrange(2001)]) try: # f_id = first_id() lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Settings') set.click() ch_psw = self.driver.find_element_by_id('Change password') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField' ) conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField' ) conf_psw.send_keys(123) new_psw.send_keys(123) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertEqual( str( self.driver.find_element_by_id( 'The password changed successfully').get_attribute( 'name')), 'The password changed successfully') self.driver.find_element_by_id('OK').click() sleep(3) self.assertTrue( self.driver.find_element_by_id('navigationTitleIcon')) elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Настройки') set.click() ch_psw = self.driver.find_element_by_id('Смена пароля') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField' ) conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField' ) conf_psw.send_keys(123) new_psw.send_keys(123) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertEqual( str( self.driver.find_element_by_id( 'Пароль успешно изменен').get_attribute('name')), '\xcf\xe0\xf0\xee\xeb\xfc \xf3\xf1\xef\xe5\xf8\xed\xee \xe8\xe7\xec\xe5\xed\xe5\xed' ) self.driver.find_element_by_id('OK').click() sleep(3) self.assertTrue( self.driver.find_element_by_id('navigationTitleIcon')) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Налаштування') set.click() ch_psw = self.driver.find_element_by_id('Зміна паролю') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField' ) conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField' ) conf_psw.send_keys(123) new_psw.send_keys(123) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertEqual( str( self.driver.find_element_by_id( 'Пароль успішно змінено').get_attribute('name')), '\xcf\xe0\xf0\xee\xeb\xfc \xf3\xf1\xef\xb3\xf8\xed\xee \xe7\xec\xb3\xed\xe5\xed\xee' ) self.driver.find_element_by_id('OK').click() sleep(3) self.assertTrue( self.driver.find_element_by_id('navigationTitleIcon')) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_41.png' self.driver.save_screenshot(directory + file_name) raise finally: passw_sql(login)
def latin_psw(self, login, password): try: dt = u'Лат123' # f_id = first_id() lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Settings') set.click() ch_psw = self.driver.find_element_by_id('Change password') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField' ) conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField' ) conf_psw.send_keys(dt) new_psw.send_keys(dt) conf = self.driver.find_element_by_id('navBarOk') conf.click() sleep(3) self.assertTrue( self.driver.find_element_by_id( 'Password contains invalid characters: “Л, а, т”')) elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Настройки') set.click() ch_psw = self.driver.find_element_by_id('Смена пароля') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField' ) conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField' ) conf_psw.send_keys(dt) new_psw.send_keys(dt) conf = self.driver.find_element_by_id('navBarOk') conf.click() sleep(3) self.assertTrue( self.driver.find_element_by_id( 'Пароль содержит недопустимые символы: “Л, а, т”')) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Налаштування') set.click() ch_psw = self.driver.find_element_by_id('Зміна паролю') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField' ) conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField' ) conf_psw.send_keys(dt) new_psw.send_keys(dt) conf = self.driver.find_element_by_id('navBarOk') conf.click() sleep(3) self.assertTrue( self.driver.find_element_by_id( 'Пароль містить неприпустимі символи: “Л, а, т”')) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_44.png' self.driver.save_screenshot(directory + file_name) raise
def bank_card(self, login, password): try: # f_id = first_id() lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Transfers') bil.click() new_trans = self.driver.find_element_by_id('New transfers') new_trans.click() scheta = self.driver.find_element_by_id('Within the bank') scheta.click() new_schet = self.driver.find_element_by_id('New') new_schet.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') # w = re.findall(r'\d+.\d{2}\s\w{3}', i.find_element_by_xpath('//XCUIElementTypeCell/XCUIElementTypeStaticText').get_attribute('name')) # w1 = re.findall(r'\d+.\d{2}\s\w{3}', i.find_element_by_xpath('//XCUIElementTypeCell/XCUIElementTypeStaticText[3]').get_attribute('name')) if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) > 4: print len( re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) self.driver.execute_script('mobile: scroll', { "element": w1, "toVisible": True }) w1.click() break elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0]) > 4: print re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w, "toVisible": True }) w.click() break credit = self.driver.find_element_by_id('navBarNext') credit.click() sleep(3) poluchat = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) naimenovan = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[2]/XCUIElementTypeTextField' ) id_poluch = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeTextField' ) id_poluch.send_keys(constants.bank_inn) naimenovan.send_keys(constants.name) poluchat.send_keys(constants.bank_accno) step2 = self.driver.find_element_by_id('navBarNext') step2.click() sleep(3) amount = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) info = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[2]/XCUIElementTypeTextView' ) amount.send_keys(1) f_id = first_id(login) self.driver.find_element_by_id('OK').click() info.send_keys('some text') step2.click() sleep(3) self.driver.find_element_by_id('navBarOk').click() sleep(3) sms = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow[3]/XCUIElementTypeOther[2]/XCUIElementTypeAlert/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeCollectionView/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeSecureTextField' ) conf = self.driver.find_element_by_id('Confirm') sms.send_keys(find_sms(f_id, login)) # sms.send_keys(123456) conf.click() self.assertTrue( self.driver.find_element_by_id( 'The payment has been successfully confirmed')) """ Нет подтверждения, сервер не работает """ elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() perevodi = self.driver.find_element_by_id('Переводы') perevodi.click() perevodi = self.driver.find_element_by_id('Новый платеж') perevodi.click() scheta = self.driver.find_element_by_id('Внутри банка') scheta.click() new_schet = self.driver.find_element_by_id('Новый') new_schet.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) > 4: print len( re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) self.driver.execute_script('mobile: scroll', { "element": w1, "toVisible": True }) w1.click() break elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0]) > 4: print re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w, "toVisible": True }) w.click() break credit = self.driver.find_element_by_id('navBarNext') credit.click() sleep(3) poluchat = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) naimenovan = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[2]/XCUIElementTypeTextField' ) id_poluch = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeTextField' ) id_poluch.send_keys(constants.bank_inn) naimenovan.send_keys(constants.name) poluchat.send_keys(constants.bank_accno) step2 = self.driver.find_element_by_id('navBarNext') step2.click() sleep(3) amount = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) info = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[2]/XCUIElementTypeTextView' ) amount.send_keys(1) f_id = first_id(login) self.driver.find_element_by_id('OK').click() info.send_keys('some text') step2.click() sleep(3) self.driver.find_element_by_id('navBarOk').click() sleep(3) sms = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow[3]/XCUIElementTypeOther[2]/XCUIElementTypeAlert/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeCollectionView/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeSecureTextField' ) conf = self.driver.find_element_by_id('Подтвердить') sms.send_keys(find_sms(f_id, login)) # sms.send_keys(123456) conf.click() self.assertTrue( self.driver.find_element_by_id('Платеж успешно подтвержден')) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Перекази') bil.click() new_trans = self.driver.find_element_by_id('Новий переказ') new_trans.click() scheta = self.driver.find_element_by_id('В межах банку') scheta.click() new_schet = self.driver.find_element_by_id('Новий') new_schet.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') # w = re.findall(r'\d+.\d{2}\s\w{3}', i.find_element_by_xpath('//XCUIElementTypeCell/XCUIElementTypeStaticText').get_attribute('name')) # w1 = re.findall(r'\d+.\d{2}\s\w{3}', i.find_element_by_xpath('//XCUIElementTypeCell/XCUIElementTypeStaticText[3]').get_attribute('name')) if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) > 4: print len( re.findall(r'\d+.\d{2}', w1.get_attribute('name'))[0]) self.driver.execute_script('mobile: scroll', { "element": w1, "toVisible": True }) w1.click() break elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): if len( re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0]) > 4: print re.findall(r'\d+.\d{2}', w.get_attribute('name'))[0] self.driver.execute_script('mobile: scroll', { "element": w, "toVisible": True }) w.click() break credit = self.driver.find_element_by_id('navBarNext') credit.click() sleep(3) poluchat = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) naimenovan = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[2]/XCUIElementTypeTextField' ) id_poluch = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeTextField' ) id_poluch.send_keys(constants.bank_inn) naimenovan.send_keys(constants.name) poluchat.send_keys(constants.bank_accno) step2 = self.driver.find_element_by_id('navBarNext') step2.click() sleep(3) amount = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) info = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[2]/XCUIElementTypeTextView' ) amount.send_keys(1) f_id = first_id(login) self.driver.find_element_by_id('OK').click() info.send_keys('some text') step2.click() sleep(3) self.driver.find_element_by_id('navBarOk').click() sleep(3) sms = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow[3]/XCUIElementTypeOther[2]/XCUIElementTypeAlert/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeCollectionView/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeSecureTextField' ) conf = self.driver.find_element_by_id('Підтвердити') sms.send_keys(find_sms(f_id, login)) # sms.send_keys(123456) conf.click() self.assertTrue( self.driver.find_element_by_id('Платіж успішно підтверджений')) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_36.png' self.driver.save_screenshot(directory + file_name) raise
def rule_18(self, login, password): try: rules(18, login) try: self.driver.find_element_by_id('Cancel').click() except NoSuchElementException: pass lang = 0 while lang < 3: try: if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(30) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Transfers') bil.click() new_trans = self.driver.find_element_by_id('New transfers') new_trans.click() scheta = self.driver.find_element_by_id('Between own accounts') scheta.click() new_schet = self.driver.find_element_by_id('New') new_schet.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: try: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') except NoSuchElementException: print i.find_element_by_xpath( '//XCUIElementTypeCell').get_attribute('name') print 'exception time' w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[1]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w1.get_attribute('name')) [0].lstrip(' ') == 'UAH') elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w.get_attribute('name')) [0].lstrip(' ') == 'UAH') account = self.driver.find_element_by_id('From account') account.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) spisok2 = self.driver.find_elements_by_xpath( '//XCUIElementTypeCell') spisok2.remove(spisok2[len(spisok2) - 1]) for i in spisok2: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[1]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w1.get_attribute('name')) [0].lstrip(' ') == 'UAH') elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w.get_attribute('name')) [0].lstrip(' ') == 'UAH') elif lang == 1: self.driver.implicitly_wait(30) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Переводы') bil.click() new_trans = self.driver.find_element_by_id('Новый платеж') new_trans.click() scheta = self.driver.find_element_by_id('Между своими счетами') scheta.click() new_schet = self.driver.find_element_by_id('Новый') new_schet.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) for i in sp: try: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') except NoSuchElementException: print i.find_element_by_xpath( '//XCUIElementTypeCell').get_attribute('name') print 'exception time' w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[1]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w1.get_attribute('name')) [0].lstrip(' ') == 'UAH') elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w.get_attribute('name')) [0].lstrip(' ') == 'UAH') account = self.driver.find_element_by_id('Со счета') account.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) spisok2 = self.driver.find_elements_by_xpath( '//XCUIElementTypeCell') spisok2.remove(spisok2[len(spisok2) - 1]) for i in spisok2: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[1]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w1.get_attribute('name')) [0].lstrip(' ') == 'UAH') elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w.get_attribute('name')) [0].lstrip(' ') == 'UAH') elif lang == 2: self.driver.implicitly_wait(30) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() bil = self.driver.find_element_by_id('Перекази') bil.click() new_trans = self.driver.find_element_by_id('Новий переказ') new_trans.click() scheta = self.driver.find_element_by_id('Між своїми рахунками') scheta.click() new_schet = self.driver.find_element_by_id('Новий') new_schet.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) sp = self.driver.find_elements_by_xpath('//XCUIElementTypeCell') sp.remove(sp[len(sp) - 1]) cur = [] for i in sp: try: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') except NoSuchElementException: print i.find_element_by_xpath( '//XCUIElementTypeCell').get_attribute('name') print 'exception time' w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[1]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w1.get_attribute('name')) [0].lstrip(' ') == 'UAH') elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w.get_attribute('name')) [0].lstrip(' ') == 'UAH') account = self.driver.find_element_by_id('З рахунку') account.click() sleep(3) self.driver.find_element_by_id('Done').click() sleep(3) spisok2 = self.driver.find_elements_by_xpath( '//XCUIElementTypeCell') spisok2.remove(spisok2[len(spisok2) - 1]) for i in spisok2: w = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[3]') w1 = i.find_element_by_xpath( '//XCUIElementTypeCell/XCUIElementTypeStaticText[1]') if not re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w1.get_attribute('name')) [0].lstrip(' ') == 'UAH') elif not re.findall(r'\d+\.\d{2}\s\w{3}', w1.get_attribute('name')): print re.findall(r'\d+\.\d{2}\s\w{3}', w.get_attribute('name')) self.assertTrue( re.findall(r'\s\w{3}', w.get_attribute('name')) [0].lstrip(' ') == 'UAH') except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_18.png' self.driver.save_screenshot(directory + file_name) raise finally: rules(18, login)
def mess_limit(self, login, password): th = "".join([random.choice(string.letters) for i in xrange(85)]) tx = "".join([random.choice(string.letters) for i in xrange(2001)]) try: lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() mes = self.driver.find_element_by_id('Messages') mes.click() new_ms = self.driver.find_element_by_id('New message') new_ms.click() sleep(3) send = self.driver.find_element_by_id('icon send') theme = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) text = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[2]/XCUIElementTypeTextView' ) theme.send_keys(th) arr = self.driver.find_element_by_id('arrow right normal') arr.click() text.send_keys(tx) send.click() sleep(5) self.assertTrue(self.driver.find_element_by_id('SENT')) msg = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeStaticText[2]' ) self.assertEqual(str(msg.get_attribute('name')), str(tx[:1800])) elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() mes = self.driver.find_element_by_id('Сообщения') mes.click() new_ms = self.driver.find_element_by_id('Новое сообщение') new_ms.click() sleep(3) send = self.driver.find_element_by_id('icon send') theme = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) text = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[2]/XCUIElementTypeTextView' ) theme.send_keys(th) arr = self.driver.find_element_by_id('arrow right normal') arr.click() text.send_keys(tx) send.click() sleep(5) self.assertTrue(self.driver.find_element_by_id('ОТПРАВЛЕННЫЕ')) msg = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeStaticText[2]' ) self.assertEqual(str(msg.get_attribute('name')), str(tx[:1800])) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() mes = self.driver.find_element_by_id('Повідомлення') mes.click() new_ms = self.driver.find_element_by_id('Нове повідомлення') new_ms.click() sleep(3) send = self.driver.find_element_by_id('icon send') theme = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeTextField' ) text = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[2]/XCUIElementTypeTextView' ) theme.send_keys(th) arr = self.driver.find_element_by_id('arrow right normal') arr.click() text.send_keys(tx) send.click() sleep(5) self.assertTrue(self.driver.find_element_by_id('ВІДПРАВЛЕНІ')) msg = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeStaticText[2]' ) self.assertEqual(str(msg.get_attribute('name')), str(tx[:1800])) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_40.png' self.driver.save_screenshot(directory + file_name) raise
def dif_psw(self, login, password): try: # f_id = first_id() lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Settings') set.click() ch_psw = self.driver.find_element_by_id('Change password') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField' ) conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField' ) conf_psw.send_keys(123) new_psw.send_keys(321) conf = self.driver.find_element_by_id('navBarOk') conf.click() sleep(3) self.assertTrue( self.driver.find_element_by_id( 'The new password and its confirmation do not match!')) elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Настройки') set.click() ch_psw = self.driver.find_element_by_id('Смена пароля') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField' ) conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField' ) conf_psw.send_keys(123) new_psw.send_keys(321) conf = self.driver.find_element_by_id('navBarOk') conf.click() sleep(3) self.assertTrue( self.driver.find_element_by_id( 'Новый пароль и его подтверждение не совпадают!')) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Налаштування') set.click() ch_psw = self.driver.find_element_by_id('Зміна паролю') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField' ) conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField' ) conf_psw.send_keys(123) new_psw.send_keys(321) conf = self.driver.find_element_by_id('navBarOk') conf.click() sleep(3) self.assertTrue( self.driver.find_element_by_id( 'Новий пароль та його підтвердження не співпадають!')) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_43.png' self.driver.save_screenshot(directory + file_name) raise
def same_psw(self, login, password): try: # f_id = first_id() lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Settings') set.click() ch_psw = self.driver.find_element_by_id('Change password') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath('/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField') conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField') conf_psw.send_keys(321) new_psw.send_keys(321) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertTrue(self.driver.find_element_by_id("The values of the 'New password' and 'Current password' fields must be different.")) elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Настройки') set.click() ch_psw = self.driver.find_element_by_id('Смена пароля') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField') conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField') conf_psw.send_keys(321) new_psw.send_keys(321) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertTrue(self.driver.find_element_by_id("Значения полей 'Новый пароль' и 'Текущий пароль' должны отличаться.")) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Налаштування') set.click() ch_psw = self.driver.find_element_by_id('Зміна паролю') ch_psw.click() sleep(3) new_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell/XCUIElementTypeSecureTextField') conf_psw = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTable/XCUIElementTypeCell[3]/XCUIElementTypeSecureTextField') conf_psw.send_keys(321) new_psw.send_keys(321) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertTrue(self.driver.find_element_by_id("Значення полів 'Новий пароль' та 'Поточний пароль' мають відрізнятися.")) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_46.png' self.driver.save_screenshot(directory + file_name) raise
def same_log(self, login, password): dt = 'AUTOTEST' try: # f_id = first_id() lang = 0 while lang < 3: try: # self.driver.find_element_by_id('OK').click() if lang == 0: self.driver.find_element_by_id('Remember login?') elif lang == 1: self.driver.find_element_by_id('Запомнить логин?') elif lang == 2: self.driver.find_element_by_id("Запам'ятати логін?") break except: lang += 1 # login(self, lang) login_planshet(self, login, password, lang) if lang == 0: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('No') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Settings') set.click() ch_psw = self.driver.find_element_by_id('Change login') ch_psw.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField' ) conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]' ) conf_lgn.send_keys(dt) new_lgn.send_keys(dt) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertTrue( self.driver.find_element_by_id( "Values of new login and current login must be different.") ) elif lang == 1: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Нет') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Настройки') set.click() ch_lgn = self.driver.find_element_by_id('Смена логина') ch_lgn.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField' ) conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]' ) conf_lgn.send_keys(dt) new_lgn.send_keys(dt) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertTrue( self.driver.find_element_by_id( "Новый логин должен отличаться от текущего")) elif lang == 2: self.driver.implicitly_wait(15) sleep(4) try: allert = self.driver.find_element_by_id('Ні') allert.click() except NoSuchElementException: pass menu = self.driver.find_element_by_id('homePage') menu.click() arrow = self.driver.find_element_by_id('menuArrowBottom') arrow.click() set = self.driver.find_element_by_id('Налаштування') set.click() ch_psw = self.driver.find_element_by_id('Зміна логін') ch_psw.click() sleep(3) new_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField' ) conf_lgn = self.driver.find_element_by_xpath( '/XCUIElementTypeApplication/XCUIElementTypeWindow/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeScrollView/XCUIElementTypeOther/XCUIElementTypeTextField[2]' ) conf_lgn.send_keys(dt) new_lgn.send_keys(dt) self.driver.find_element_by_id('navBarOk').click() sleep(3) self.assertTrue( self.driver.find_element_by_id( "Новий логін повинен відрізнятися від поточного")) except: directory = '%s/screenshots/' % os.getcwd() file_name = 'test_48.png' self.driver.save_screenshot(directory + file_name) raise