Нужно будет повторить xpath
This commit is contained in:
parent
c65db1bc45
commit
834f8f0649
7
.vscode/settings.json
vendored
Normal file
7
.vscode/settings.json
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"python.testing.pytestArgs": [
|
||||||
|
"."
|
||||||
|
],
|
||||||
|
"python.testing.unittestEnabled": false,
|
||||||
|
"python.testing.pytestEnabled": true
|
||||||
|
}
|
19
requirements.txt
Normal file
19
requirements.txt
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
attrs==25.1.0
|
||||||
|
certifi==2025.1.31
|
||||||
|
h11==0.14.0
|
||||||
|
idna==3.10
|
||||||
|
iniconfig==2.0.0
|
||||||
|
outcome==1.3.0.post0
|
||||||
|
packaging==24.2
|
||||||
|
pluggy==1.5.0
|
||||||
|
PySocks==1.7.1
|
||||||
|
pytest==8.3.5
|
||||||
|
selenium==4.29.0
|
||||||
|
sniffio==1.3.1
|
||||||
|
sortedcontainers==2.4.0
|
||||||
|
trio==0.29.0
|
||||||
|
trio-websocket==0.12.2
|
||||||
|
typing_extensions==4.12.2
|
||||||
|
urllib3==2.3.0
|
||||||
|
websocket-client==1.8.0
|
||||||
|
wsproto==1.2.0
|
67
test_information_module.py
Normal file
67
test_information_module.py
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
import pytest
|
||||||
|
from selenium import webdriver
|
||||||
|
from selenium.webdriver.common.by import By
|
||||||
|
import time
|
||||||
|
|
||||||
|
|
||||||
|
EMAIL = 'jediforce82@gmail.com'
|
||||||
|
PASSWORD = 'aboba123'
|
||||||
|
|
||||||
|
@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
|
||||||
|
|
||||||
|
|
||||||
|
def test_header_len(driver):
|
||||||
|
header = driver.find_elements(By.CLASS_NAME, 'menu__item')
|
||||||
|
assert len(header) > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_header_navigation(driver):
|
||||||
|
header = driver.find_elements(By.CLASS_NAME, 'menu__item')
|
||||||
|
is_error = False
|
||||||
|
for menu_item in header:
|
||||||
|
driver.execute_script("arguments[0].scrollIntoView(true);", menu_item)
|
||||||
|
menu_item.click()
|
||||||
|
if not menu_item.is_enabled():
|
||||||
|
is_error = True
|
||||||
|
break
|
||||||
|
assert is_error == False
|
||||||
|
|
||||||
|
|
||||||
|
def test_feedback(login):
|
||||||
|
feedback_button = login.find_element(By.CLASS_NAME, 'feedback')
|
||||||
|
login.execute_script("arguments[0].scrollIntoView(true);", feedback_button)
|
||||||
|
feedback_button.click()
|
||||||
|
time.sleep(2)
|
||||||
|
textarea = login.find_element(By.CLASS_NAME, 'textarea')
|
||||||
|
textarea.text = 'a'
|
Loading…
x
Reference in New Issue
Block a user