import pytest import time from selenium import webdriver from selenium.webdriver.common.by import By from my_constants import EMAIL, PASSWORD @pytest.mark.order(1) @pytest.fixture() def driver(): driver = webdriver.Chrome() driver.maximize_window() driver.get('https://luna73.ru/') time.sleep(2) yield driver driver.close() @pytest.mark.order(2) @pytest.fixture() def login(driver): login_button = driver.find_element(By.CLASS_NAME, 'widget-overlay') driver.execute_script("arguments[0].scrollIntoView(true);", login_button) login_button.click() time.sleep(3) the_iframe = driver.find_element(By.ID, "kw-iframe") driver.switch_to.frame(the_iframe) email_field = driver.find_element(By.NAME, 'email') password_field = driver.find_element(By.NAME, 'password') email_field.send_keys(EMAIL) password_field.send_keys(PASSWORD) enter_button = driver.find_element(By.CLASS_NAME, 'login-form__button') enter_button.click() time.sleep(2) close_button = driver.find_element(By.CLASS_NAME, 'popup-close-icon') close_button.click() time.sleep(2) driver.switch_to.default_content() yield driver @pytest.mark.order(3) @pytest.fixture() def open_profile(login): profile_icon_main = login.find_element( By.XPATH, "//*[@id='root']/div/div/nav/div/div[1]/div") login.execute_script( "arguments[0].scrollIntoView(true);", profile_icon_main) profile_icon_main.click() time.sleep(2) the_iframe_window = login.find_element(By.ID, "kw-iframe") login.switch_to.frame(the_iframe_window) login.find_element(By.CLASS_NAME, 'button-back').click() profile_icon_window = login.find_element( By.XPATH, "//*[@id='root']/div/div[1]/div[1]/div[1]/button[1]/img") profile_icon_window.click() time.sleep(2) yield login