Например, существует иконка Помощника (Help), которая должна отображаться на всех страницах вебсайта. Пользователь может кликнуть на нее и пообщаться с Службой поддержки.
Сейчас существует много сервисов, которые позволяют использовать их инструмент для такого окна - Intercom, Helpscout, Zendesk....
АВТОТЕСТ:
- Проверить, что иконка помощника отображается на странице.
Открываем trial_download_signup_page старницу.
Переключаемся на Frame, где эта иконка находится. Потом ищем иконку, проверяем ее видимость на странице и переключаемся обратно на исходную страницу.
Дальше нам надо еще ввести и-мейл, согласиться с условиями и кликнуть кнопку Download.
На открывшейся старницы мы тоже проверяем наличие Help иконки.
Для переключения на рамку будем использовать функцию - switch_to_frame
Для возвращения на исходную страницу - switch_to_default_content
def test_user_should_see_help_icon_on_trial_download_signup_page(driver):
trial_download_signup_page.open(driver)
assert trial_download_signup_page.help.is_icon_displayed(driver), \
"Help icon is not displayed on Trial Download Signup page"
driver.switch_to_default_content()
trial_download_signup_page.set_email(driver, TestData.get_random_email())
trial_download_signup_page.agree_to_terms_and_policy(driver)
trial_download_signup_page.click_download_button(driver)
assert trial_download_signup_page.help.is_icon_displayed(driver), \
"Help icon is not displayed on SA Signup Follow page"
in Help file:
@allure.step("Check if Help icon is displayed on the page")
def is_icon_displayed(driver):
iframe = HtmlElement(driver, (By.CSS_SELECTOR, "selector"]'))
iframe.switch_to_frame()
help_icon = HtmlElement(driver, (By.CSS_SELECTOR, "selector"]'))
return helpscout_icon.is_element_visible()