Вопрос пользователя:
Ответ нейросети:
from selenium.webdriver.common.by import By
class LoginPage:
def __init__(self, driver):
self.driver = driver
self.username_input = (By.ID, "user-name")
self.password_input = (By.ID, "password")
self.login_button = (By.ID, "login-button")
def enter_username(self, username):
self.driver.find_element(*self.username_input).send_keys(username)
def enter_password(self, password):
self.driver.find_element(*self.password_input).send_keys(password)
def click_login_button(self):
self.driver.find_element(*self.login_button).click()
from selenium.webdriver.common.by import By
class MainPage:
def __init__(self, driver):
self.driver = driver
self.add_to_cart_buttons = (By.CLASS_NAME, "btn_inventory")
self.cart_button = (By.CLASS_NAME, "shopping_cart_link")
def add_item_to_cart(self):
self.driver.find_elements(*self.add_to_cart_buttons)[0].click()
def go_to_cart(self):
self.driver.find_element(*self.cart_button).click()
from selenium.webdriver.common.by import By
class CartPage:
def __init__(self, driver):
self.driver = driver
self.checkout_button = (By.CLASS_NAME, "checkout_button")
self.cart_items = (By.CLASS_NAME, "cart_item")
def click_checkout_button(self):
self.driver.find_element(*self.checkout_button).click()
def get_cart_items(self):
items = self.driver.find_elements(*self.cart_items)
return [item.text for item in items]
import unittest
from selenium import webdriver
from LoginPage import LoginPage
from MainPage import MainPage
from CartPage import CartPage
class TestShoppingCart(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Chrome()
self.driver.get("https://www.saucedemo.com/")
def test_shopping_cart(self):
login_page = LoginPage(self.driver)
login_page.enter_username("standard_user")
login_page.enter_password("secret_sauce")
login_page.click_login_button()
main_page = MainPage(self.driver)
main_page.add_item_to_cart()
main_page.go_to_cart()
cart_page = CartPage(self.driver)
cart_items = cart_page.get_cart_items()
self.assertIn("Sauce Labs Backpack", cart_items)
cart_page.click_checkout_button()
def tearDown(self):
self.driver.quit()
if __name__ == "__main__":
unittest.main()
Это пример автотеста для интернет-магазина на сайте https://www.saucedemo.com/, который использует паттерн Page Object для удобного и структурированного доступа к элементам страницы. В данном тесте осуществляется вход на сайт, добавление товара в корзину, проверка содержимого корзины и переход к оформлению заказа.
Напишите нам, если в вопросе есть ваши персональные данные ([email protected])
Обратите внимание: ответы, предоставляемые искусственным интеллектом, могут не всегда быть точными. Не рассчитывайте на них в критически важных областях, таких как медицина, юриспруденция, финансы или в вопросах, связанных с безопасностью. Для важных решений всегда обращайтесь к квалифицированным специалистам. Администрация сайта не несет ответственности за контент, сгенерированный автоматически.