e-nms_qa_automation/tests/e2e/test_license_tab.py

57 lines
2.3 KiB
Python

from pages.login_page import LoginPage
from pages.main_page import MainPage
from pages.license_tab import LicenseTab
from playwright.sync_api import Page
import pytest
import uuid
from typing import List
class TestLicenseTab:
"""Тесты для вкладки 'Лицензии'."""
@pytest.fixture(scope="function", autouse=True)
def setup(self, browser: Page) -> None:
"""Подготовка тестового окружения."""
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: Page) -> None:
"""Тест содержимого вкладки 'Лицензии'."""
lt = LicenseTab(browser)
lt.check_content()
def test_license_tab_input_form_and_check_alert(self, browser: Page) -> None:
"""Тест формы ввода лицензии и проверки алертов."""
def gen_test_data() -> List[str]:
"""Генерация тестовых данных для проверки формы ввода лицензии."""
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("Ошибка обновления лицензии")