import time import pytest import allure from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC
@pytest.fixture def browser(): driver = webdriver.Chrome() yield driver driver.quit()
@allure.title("Test adding a book to the cart") def test_add_book_to_cart(browser): browser.get("https://www.chitai-gorod.ru/")
search_input = browser.find_element(By.ID, "search-input")
search_input.send_keys("The Great Gatsby")
search_button = browser.find_element(By.CLASS_NAME, "search-form__btn")
search_button.click()
WebDriverWait(browser, 10).until(EC.visibility_of_element_located((By.CLASS_NAME, "product-card__title")))
book_title = browser.find_element(By.CLASS_NAME, "product-card__title").text
assert "The Great Gatsby" in book_title
add_to_cart_button = browser.find_element(By.CLASS_NAME, "product-card__buy")
add_to_cart_button.click()
WebDriverWait(browser, 10).until(EC.visibility_of_element_located((By.CLASS_NAME, "cart__item")))
cart_items = browser.find_elements(By.CLASS_NAME, "cart__item")
assert len(cart_items) == 1
with allure.step("Taking screenshot of the cart"):
allure.attach(browser.get_screenshot_as_png(), name="screenshot", attachment_type=allure.attachment_type.PNG)
Обратите внимание: ответы, предоставляемые искусственным интеллектом, могут не всегда быть точными. Не рассчитывайте на них в критически важных областях, таких как медицина, юриспруденция, финансы или в вопросах, связанных с безопасностью. Для важных решений всегда обращайтесь к квалифицированным специалистам. Администрация сайта не несет ответственности за контент, сгенерированный автоматически.