def case_3(): login.myPrint("Тест 3") wrong_login = '******' wrong_password = '******' driver = login.pony_login(wrong_login, wrong_password) if driver == 'ERROR': return elem_wrong_password = element_login = WebDriverWait(driver, 5).until( EC.visibility_of_element_located( (By.XPATH, '/html/body/div[1]/section/form/p'))) if elem_wrong_password.text == 'Неверный логин или пароль': login.myPrint('Неверный логин или пароль') login.myPrint('Тест 3 пройден') else: login.myPrint('Произошло чудо, пароль и логин верны') driver.close() return 'ERROR' #time.sleep(5) driver.close()
def case_2(): login.myPrint("Тест 2") driver = login.pony_login(login.paths.login, login.paths.password) if driver == 'ERROR': return try: element_menu_button = WebDriverWait(driver, 5).until( EC.element_to_be_clickable(( By.XPATH, '/html/body/div[1]/section/section[1]/div/div/span/span/button' ))) except: login.myPrint('Не зашёл в систему') driver.close() return 'ERROR' login.myPrint('Вошёл в систему') try: element_exit_button = element_menu_button = WebDriverWait( driver, 5 ).until( EC.element_to_be_clickable(( By.XPATH, '/html/body/div[1]/section/section[1]/div/div/div[2]/div/button[2]' ))) except: login.myPrint('Не нашёл кнопку выхода') driver.close() return 'ERROR' element_exit_button.click() login.myPrint('Вышел из системы') try: element_login = WebDriverWait(driver, 5).until( EC.visibility_of_element_located( (By.XPATH, '/html/body/div[1]/section/form/input[1]'))) element_password = WebDriverWait(driver, 5).until( EC.visibility_of_element_located( (By.XPATH, '/html/body/div[1]/section/form/input[2]'))) except: login.myPrint('Не найдены поля для ввода') driver.close() return 'ERROR' login.myPrint('Вернулся на главную страницу') login.myPrint('Тест 2 пройден') #time.sleep(5) driver.close()
def case_1(): login.myPrint("Тест 1") driver = login.pony_login(login.paths.login, login.paths.password) if driver == 'ERROR': return try: element_menu_button = WebDriverWait(driver, 5).until( EC.element_to_be_clickable((By.XPATH, '/html/body/div[1]/section/section[1]/div/div/span/span/button'))) except: login.myPrint('Не зашёл в систему') driver.close() return 'ERROR' login.myPrint('Вошёл в систему') login.myPrint('Тест 1 пройден') #time.sleep(5) driver.close()
def case_8(): login.myPrint("Тест 8") driver = login.pony_login(login.paths.login, login.paths.password) if driver == 'ERROR': return try: element_menu_button = WebDriverWait(driver, 5).until( EC.element_to_be_clickable(( By.XPATH, '/html/body/div[1]/section/section[1]/div/div/span/span/button' ))) except: login.myPrint('Не зашёл в систему') driver.close() return 'ERROR' login.myPrint('Вошёл в систему') element_menu_button.click() login.myPrint("Нажал кнопку Меню") try: element_manufacture_button = WebDriverWait(driver, 5).until( EC.element_to_be_clickable( (By.CSS_SELECTOR, ".bp3-submenu:nth-child(1) .bp3-text-overflow-ellipsis"))) except: login.myPrint('Не нашёл кнопку Производство') driver.close() return 'ERROR' element_manufacture_button.click() login.myPrint("Нажал кнопку Производство") try: element_event_registration_button = WebDriverWait(driver, 5).until( EC.element_to_be_clickable(( By.XPATH, "/html/body/div[3]/div/div/div/div[2]/ul/li[1]/span/div/div/div/div/ul/li[1]/span/span" ))) except: login.myPrint('Не нашёл кнопку Регистрация событий') driver.close() return 'ERROR' element_event_registration_button.click() login.myPrint("Нажал кнопку Регистрация событий") try: element_no_sorting_button = WebDriverWait(driver, 5).until( EC.element_to_be_clickable(( By.XPATH, "/html/body/div[3]/div/div/div/div[2]/ul/li[1]/span/div/div/div/div/ul/li[1]/span/div/div[2]/div/div/ul/li[1]/a" ))) except: login.myPrint('Не нашёл кнопку Прибыл на склад(Без сортировки)') driver.close() return 'ERROR' element_no_sorting_button.click() login.myPrint("Нажал кнопку Прибыл на склад(Без сортировки)") time.sleep(2) driver.switch_to_window(driver.window_handles[1]) try: element_without_courier_button = WebDriverWait(driver, 10).until( EC.element_to_be_clickable(( By.XPATH, "/html/body/div[3]/div/div[2]/div/div[2]/div/div[1]/div[1]/button[2]/span" ))) except: login.myPrint('Не нашёл кнопку Без курьера') driver.close() driver.switch_to_window(driver.window_handles[0]) driver.close() return 'ERROR' element_without_courier_button.click() login.myPrint('Нажал кнопку Без курьера') try: element_menu_name_button = WebDriverWait(driver, 5).until( EC.element_to_be_clickable(( By.XPATH, "/html/body/div[1]/section/section[2]/section/section/div[1]/h1" ))) except: login.myPrint('Не нашёл название меню') driver.close() driver.switch_to_window(driver.window_handles[0]) driver.close() return 'ERROR' if element_menu_name_button.text != '71. Прибыл на склад (без сортировки)': login.myPrint('Попал не в то меню') driver.close() driver.switch_to_window(driver.window_handles[0]) driver.close() return 'ERROR' login.myPrint('Попал в меню 71. Прибыл на склад (без сортировки)') login.myPrint("Тест 8 пройден") time.sleep(5) driver.close() driver.switch_to_window(driver.window_handles[0]) driver.close()
def editing_user_groups(mylogin, password): driver = login.pony_login(mylogin, password) if driver == 'ERROR': return try: element_menu_button = WebDriverWait(driver, 5).until( EC.element_to_be_clickable(( By.XPATH, '/html/body/div[1]/section/section[1]/div/div/span/span/button' ))) except: login.myPrint('Не зашёл в систему') driver.close() return 'ERROR' login.myPrint('Вошёл в систему') element_menu_button.click() login.myPrint("Нажал кнопку Меню") try: element_service_button = WebDriverWait(driver, 5).until( EC.element_to_be_clickable( (By.CSS_SELECTOR, ".bp3-submenu:nth-child(7) .bp3-text-overflow-ellipsis"))) except: login.myPrint('Не нашёл кнопку Сервис') driver.close() return 'ERROR' element_service_button.click() login.myPrint("Нажал кнопку Сервис") try: element_permissions_management_button = WebDriverWait(driver, 5).until( EC.element_to_be_clickable(( By.CSS_SELECTOR, ".bp3-popover-content:nth-child(1) .bp3-submenu:nth-child(1) .bp3-text-overflow-ellipsis" ))) except: login.myPrint('Не нашёл кнопку Управление разрешениями') driver.close() return 'ERROR' element_permissions_management_button.click() login.myPrint("Нажал кнопку Управление разрешениями") try: element_group_of_users_button = WebDriverWait(driver, 5).until( EC.element_to_be_clickable(( By.CSS_SELECTOR, "li:nth-child(1) > .bp3-menu-item > .bp3-text-overflow-ellipsis" ))) except: login.myPrint('Не нашёл кнопку Группы пользователей') driver.close() return 'ERROR' element_group_of_users_button.click() login.myPrint("Нажал кнопку Группы пользователей") try: element_editing_user_groups = WebDriverWait(driver, 5).until( EC.visibility_of_element_located( (By.XPATH, "/html/body/div[1]/section/section[2]/section/div/h1"))) except: login.myPrint('Не нашёл идентификатор меню') driver.close() return 'ERROR' if element_editing_user_groups.text != 'Редактирование групп пользователей': login.myPrint("Попал в другое меню") driver.close() return 'ERROR' else: login.myPrint("Попал в меню Редактирование групп пользователей") return driver