e-nms_qa_automation/tests/e2e/test_license_tab.py

102 lines
4.2 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

from pages.login_page import LoginPage
from pages.main_page import MainPage
from pages.license_tab import LicenseTab
import pytest
import uuid
# @pytest.mark.smoke
class TestLisenceTab:
"""Тесты для вкладки 'Лицензии'.
Атрибуты:
browser: фикстура для работы с браузером.
"""
@pytest.fixture(scope="function", autouse=True)
def setup(self, browser):
"""Подготовка тестового окружения.
Выполняет вход в систему и переход на вкладку 'Лицензии'.
Args:
browser: фикстура для работы с браузером.
"""
lp = LoginPage(browser)
lp.do_login()
# Переход на главную страницу
mp = MainPage(browser)
# Проверка наличия панели навигации
mp.should_be_navigation_panel()
# Клик по кнопке "Настройки" в главной панели навигации
mp.click_main_navigation_panel_item("Настройки")
# Клик по кнопке "Обслуживание и диагностика" в панели навигации настроек
mp.click_configuration_navigation_panel_item("Обслуживание и диагностика")
# Клик по кнопке "Лицензии" в панели навигации настроек
mp.click_configuration_navigation_panel_item("Лицензии")
def test_lisence_tab_content(self, browser):
"""Тест содержимого вкладки 'Лицензии'.
Проверяет корректность отображения содержимого вкладки.
Args:
browser: фикстура для работы с браузером.
"""
# Вкладка лицензий открыта
lt = LicenseTab(browser)
# Проверка содержимого таблицы статусов сервисов
lt.check_content()
def test_license_tab_input_form_and_check_alert(self, browser):
"""Тест формы ввода лицензии и проверки алертов.
Проверяет обработку различных вариантов ввода в форму лицензии.
Args:
browser: фикстура для работы с браузером.
"""
def gen_test_data():
"""Генерация тестовых данных для проверки формы ввода лицензии.
Returns:
list: Список тестовых строк для проверки.
"""
data = []
for i in range(3):
data.append(uuid.uuid4().hex)
lowercase_str = uuid.uuid4().hex
data.append(lowercase_str.upper())
data.append(lowercase_str + "fffffffff")
data.append("0")
data.append("000000000000000000000000000000000000000000000000")
data.append("-1")
return data
# Вкладка лицензий открыта
lt = LicenseTab(browser)
# Проверка наличия пустой формы ввода лицензии
lt.should_be_empty_input_form()
# Ввод пустой строки
lt.fill_license_input_form("")
# Проверка окна с ошибкой
lt.should_be_error_alert_window_with_text("Неверный лицензионный ключ")
data = gen_test_data()
for data_string in data:
# Ввод некорректного значения
lt.fill_license_input_form(data_string)
# Проверка окна с ошибкой
lt.should_be_error_alert_window_with_text("Ошибка обновления лицензии")