Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions pages/exercises_ru_words_page.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
"""Methods for verifying web elements on the 'Exercises "Words"' page on the 'ru' local"""
import allure
import requests
from pages.base_page import BasePage
from locators.exercises_ru_words_page_locators import ExercisesRuWordsPageLocators, HeaderLocators

Expand Down Expand Up @@ -163,6 +164,8 @@ def check_breadcrumbs_clickability(self):

@allure.step("Get attribute 'href' of links in breadcrumbs")
def get_breadcrumbs_links_href(self):
breadcrumbs_links_href = [element.get_attribute("href") for element in self.check_list1_presence()]
print(len(breadcrumbs_links_href), *breadcrumbs_links_href, sep='\n')
return breadcrumbs_links_href
return [element.get_attribute("href") for element in self.check_list1_presence()]

@allure.step("Get status code of links")
def get_link_status_codes_in_breadcrumbs(self):
return [requests.head(link_href).status_code for link_href in self.get_breadcrumbs_links_href()]
4 changes: 1 addition & 3 deletions test_data/exercises_ru_words_page_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,4 @@ class ExercisesRuWordsPageData:
f"{Links.URL_MAIN_PAGE}groups/2/series/1"
]

a = ['https://www.brainup.site/groups',
'https://www.brainup.site/groups/2',
'https://www.brainup.site/groups/2/series/1']
links_status_code = 200
8 changes: 5 additions & 3 deletions tests/exercises_ru_words_page_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -102,12 +102,14 @@ def test_erw_02_04_verify_cards_text(self, driver, exercises_ru_words_page_open)
"Text in cards mismatch the valid values"

class TestExercisesRuWordsPageLinks:
@allure.title("Verify clickability of breadcrumbs on the page")
@allure.title("Verify clickability, href, status code of links in breadcrumbs on the page")
def test_erw_03_01_verify_breadcrumbs_links(self, driver, exercises_ru_words_page_open):
page = ExercisesRuWordsPage(driver)
breadcrumbs_clickability = page.check_breadcrumbs_clickability()
breadcrumbs_links_href = page.get_breadcrumbs_links_href()
breadcrumbs_link_status_codes = page.get_link_status_codes_in_breadcrumbs()
assert breadcrumbs_clickability, "Breadcrumbs are unclickable"
assert all(href in ExercisesRuWordsPageData.breadcrumbs_links_href for href in breadcrumbs_links_href), \
"Attributes 'href' of links in breadcrumbs do not match the valid values"

"Attributes 'href' of links in breadcrumbs mismatch the valid values"
assert all(el == ExercisesRuWordsPageData.links_status_code for el in breadcrumbs_link_status_codes), \
"Status codes of links in breadcrumbs mismatch valid values"
Loading