-
Notifications
You must be signed in to change notification settings - Fork 0
/
test_main_page.py
61 lines (49 loc) · 2.22 KB
/
test_main_page.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
import pytest
from .pages.basket_page import BasketPage
from .pages.login_page import LoginPage
from .pages.main_page import MainPage
@pytest.mark.login_guest
class TestLoginFromMainPage():
# Открываем главную страницу
# Переходим на страницу логина
def test_guest_can_go_to_login_page(self, browser):
link = "http://selenium1py.pythonanywhere.com/"
# инициализируем Page Object, передаем в конструктор экземпляр драйвера и url адрес
page = MainPage(browser, link)
page.open()
page.go_to_login_page()
login_page = LoginPage(browser, browser.current_url)
login_page.should_be_login_page()
# Открываем главную страницу
# Проверяем, что есть логин
def test_guest_should_see_login_link(self, browser):
link = "http://selenium1py.pythonanywhere.com/"
page = MainPage(browser, link)
page.open()
page.should_be_login_link()
def go_to_login_page(browser):
login_link = browser.find_element_by_css_selector("#login_link")
login_link.click()
def test_change_language_on_de(browser):
link = "http://selenium1py.pythonanywhere.com/"
page = MainPage(browser, link)
page.open()
page.change_language_on_de()
assert page.check_current_language("Deutsch")
def test_find_oscar(browser):
link = "http://selenium1py.pythonanywhere.com/"
page = MainPage(browser, link)
page.open()
assert page.find("Oscar T-shirt"), "Oscar T-shirt not found"
# Гость открывает главную страницу
# Переходит в корзину по кнопке в шапке сайта
# Ожидаем, что в корзине нет товаров
# Ожидаем, что есть текст о том что корзина пуста
def test_guest_cant_see_product_in_basket_opened_from_main_page(browser):
link = "http://selenium1py.pythonanywhere.com/"
page = MainPage(browser, link)
page.open()
page.open_basket()
page_basket = BasketPage(browser, link)
page_basket.cart_should_be_empty()
page_basket.cart_should_have_empty_message()