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
17 changes: 15 additions & 2 deletions pages/groups_page.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,20 @@
from locators.groups_page_locators import GroupsPageLocators, HeaderLocators
from test_data.links import MainPageLinks as Links

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as ec


class GroupsPage(BasePage):
locators = GroupsPageLocators
locators1 = HeaderLocators

@allure.step("Loader checking")
def loader_checking(self):
self.timeout = 50
return WebDriverWait(self.driver, self.timeout).until(
ec.visibility_of_element_located(self.locators.PAGE_SUBTITLES))

# Checking the structure and display of elements on the page
@allure.step("Check if some content is present in DOM")
def check_presence_of_page_content(self):
Expand Down Expand Up @@ -67,14 +76,18 @@ def check_elements_visibility_on_5th_level(self):

@allure.step("Get structure of the 6th level of nesting on the page")
def get_structure_of_6th_level(self):
WebDriverWait(self.driver, 30).until(
ec.presence_of_all_elements_located(self.locators.PAGE_SIXTH_LEVEL_ELEMENTS))
elements = self.elements_are_present(self.locators.PAGE_SIXTH_LEVEL_ELEMENTS)
# tags = [element.tag_name for element in elements]
return elements

@allure.step("Check if elements of the 6th level of nesting are visible")
def check_elements_visibility_on_6th_level(self):
time.sleep(3)
return all(element.is_displayed() for element in self.get_structure_of_6th_level())
elements = self.get_structure_of_6th_level()
for element in elements:
WebDriverWait(self.driver, 10).until(ec.visibility_of(element))
return all(element.is_displayed() for element in elements)

@allure.step("Check the title h3 on the 2nd level of nesting is present on the page")
def check_title_presence(self):
Expand Down
4 changes: 3 additions & 1 deletion tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,9 @@ def description_page_open(driver):
def groups_ru_page_open(driver, auto_test_user_authorized):
page = GroupsPage(driver)
page.element_is_present_and_clickable(huLocators.RU_BUTTON).click()
page.element_is_present(GroupsPageLocators.PAGE_TITLE)
page.element_is_visible(GroupsPageLocators.PAGE_SUBTITLES)
page.check_expected_link(ExercisesUrls.STARTING_POINT)
page.loader_checking()


@pytest.fixture()
Expand Down
2 changes: 1 addition & 1 deletion tests/groups_page_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ def test_gp_04_02_verify_images_alt_ru(self, driver, groups_ru_page_open):
assert all(element in gPD.images_alt_ru for element in images_alt_ru), \
"The 'alt' attribute value of some images is empty or mismatches valid values on the 'ru' local"

def test_gp_04_03_verify_images_slt_en(self, driver, groups_en_page_open):
def test_gp_04_03_verify_images_alt_en(self, driver, groups_en_page_open):
page = gPage(driver)
images_alt_en = page.get_images_alt_en()
assert images_alt_en, "The 'alt' attribute value of some images is empty on the 'en' local"
Expand Down