Загрузить файлы в «/»

This commit is contained in:
Yesen 2023-11-16 23:48:21 +03:00
commit d74c4f9bb4

81
sc1.py Normal file
View File

@ -0,0 +1,81 @@
import pytest
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.firefox.service import Service
@pytest.fixture
def browser():
driver = webdriver.Firefox(service=Service(r'/home/karasik/git/test/geckodriver'))
yield driver #после выполнения тест.функции будет выполнено след дей-вие
driver.quit()
def test(browser):
browser.get('https://sbis.ru')
browser.find_element(By.LINK_TEXT, "Контакты").click()
close_popup_window(browser)
browser.find_element(By.XPATH, "/html/body/div[1]/div/div/div[2]/div[1]/div[2]/div[1]/div/div/div[1]/div/div[4]/div[1]/div/div/div[2]/div/a").click()
browser.switch_to.window(browser.window_handles[1])
close_popup_window2(browser)
wait = WebDriverWait(browser, 10)
html_content = 'Сила в людях'
xpath_expression = f"//*[contains(text(), '{html_content}')]"
a = wait.until(EC.presence_of_element_located((By.XPATH, xpath_expression)))
assert a, ("Элемент 'Сила в людях' не найден на странице.")
try:
company_block = browser.find_elements(By.LINK_TEXT, 'Сила в людях')
except:
assert company_block, ("Блок 'Сила в людях' не найден на странице.")
a = browser.find_element(By.XPATH, "//*[contains(text(), 'Сила в людях')]")
parent_block = a.find_element(By.XPATH, '..')
try:
parent_block.find_element(By.LINK_TEXT, 'Подробнее').click()
except:
print('Ссылка не открывается')
b = browser.find_element(By.XPATH, "//*[contains(text(), 'Работаем')]")
parent_block = b.find_element(By.XPATH, '../..')
png_elements = parent_block.find_elements(By.XPATH, ".//img")
#определение размеров изображений
# for image in png_elements:
# width = image.get_attribute('width')
# height = image.get_attribute('height')
# print(f"Ширина: {width}, Высота: {height}")
all_elements_equal = True
for i in range(len(png_elements)):
for j in range(i + 1, len(png_elements)):
width_i = png_elements[i].get_attribute('width')
height_i = png_elements[i].get_attribute('height')
width_j = png_elements[j].get_attribute('width')
height_j = png_elements[j].get_attribute('height')
if width_i != width_j or height_i != height_j:
all_elements_equal = False
# diff = (f"Размеры для элементов {i} и {j} различаются.")
assert all_elements_equal, ("Размеры изображений не совпадают")
def close_popup_window(driver):
banner_element = WebDriverWait(driver,10).until(
EC.visibility_of_element_located((By.CLASS_NAME, "sbis_ru-CookieAgreement__close"))
)
banner_element.click()
pass
def close_popup_window2(driver):
banner_element = WebDriverWait(driver,10).until(
EC.visibility_of_element_located((By.XPATH, "/html/body/div[1]/div/div/div[2]/div[1]/div[2]/div[1]/div/div/div[3]/div[2]/div[2]"))
)
banner_element.click()