From 461a239652130fd16aafcafe14458d26fde5e9df Mon Sep 17 00:00:00 2001 From: Radislav Date: Thu, 11 Sep 2025 10:41:46 +0300 Subject: [PATCH] =?UTF-8?q?=20=D0=A2=D0=B5=D1=81=D1=82=20=D0=BF=D0=BE?= =?UTF-8?q?=D0=B4=D1=81=D0=B2=D0=B5=D1=82=D0=BA=D0=B8=20=D1=81=D1=82=D1=80?= =?UTF-8?q?=D0=BE=D0=BA=D0=B8=20=D0=BF=D0=B5=D1=80=D0=B5=D0=BD=D0=B5=D1=81?= =?UTF-8?q?=D0=B5=D0=BD=20=D0=B2=20=D1=82=D0=B5=D1=81=D1=82=20=D1=81=D0=BE?= =?UTF-8?q?=D0=B7=D0=B4=D0=B0=D0=BD=D0=B8=D1=8F=20=D0=BD=D0=B5=D1=81=D0=BA?= =?UTF-8?q?=D0=BE=D0=BB=D1=8C=D0=BA=D0=B8=D1=85=20=D0=BF=D0=BE=D0=BB=D1=8C?= =?UTF-8?q?=D0=B7=D0=BE=D0=B2=D0=B0=D1=82=D0=B5=D0=BB=D0=B5=D0=B9=20=D0=B8?= =?UTF-8?q?=20=D0=B8=D1=85=20=D1=81=D0=B5=D0=B0=D0=BD=D1=81=D0=BE=D0=B2.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/e2e/test_sessions_tab.py | 56 +++++++++++++--------------------- 1 file changed, 21 insertions(+), 35 deletions(-) diff --git a/tests/e2e/test_sessions_tab.py b/tests/e2e/test_sessions_tab.py index f18d990..18f08b2 100644 --- a/tests/e2e/test_sessions_tab.py +++ b/tests/e2e/test_sessions_tab.py @@ -20,13 +20,12 @@ class TestSessionsTab: Тесты покрывают следующие сценарии: 1. Тест содержимого вкладки 'Сеансы' - 2. Тест подсветки строк таблицы сеансов - 3. Тест окна подтверждения удаления сеанса - 4. Тест автоматического удаления сеанса после выхода пользователя из системы (отложено) - 5. Тест создания нескольких пользователей и их сеансов - 6. Тест удаления сеанса при удалении пользователя (отложено) - 7. Тест автоматического удаления сеанса через 15 минут после выхода пользователя (отложено) - 8. Тест проверки невозможности пользователя удалить свой собственный сеанс (отложено) + 2. Тест окна подтверждения удаления сеанса + 3. Тест автоматического удаления сеанса после выхода пользователя из системы (отложено) + 4. Тест создания нескольких пользователей и их сеансов, скроллинг, подсветка строк таблицы + 5. Тест удаления сеанса при удалении пользователя (отложено) + 6. Тест автоматического удаления сеанса через 15 минут после выхода пользователя (отложено) + 7. Тест проверки невозможности пользователя удалить свой собственный сеанс (отложено) """ @pytest.fixture(scope="function", autouse=True) @@ -114,33 +113,6 @@ class TestSessionsTab: # Проверка содержимого таблица с верификацией данных из БД sessions_tab.check_sessions_table_content(verify=True) - def test_sessions_table_row_highlighting(self, browser: Page) -> None: - """Тест подсветки строк таблицы сеансов. - - Проверяет: - 1. Наличие таблицы сеансов - 2. Подсветку строки при наведении курсора на первую строку - 3. Подсветку строки при наведении курсора на последнюю строку (если строк больше одной) - 4. Корректность визуального отображения подсветки строк - """ - # Инициализация страницы сеансов - sessions_tab = SessionsTab(browser) - - # Проверка наличия таблицы сеансов - sessions_tab.should_be_sessions_table() - - # Получение количества строк в таблице без учета заголовка - rows_count = sessions_tab.get_rows_count() - - browser.wait_for_timeout(1000) - - # Проверка подсветки первой строки - sessions_tab.check_sessions_table_row_highlighting(0) - - # Проверка подсветки последней строки строки (если в таблице более одной строки) - if rows_count > 1: - browser.wait_for_timeout(1000) - sessions_tab.check_sessions_table_row_highlighting(rows_count - 1) def test_delete_session_confirm_window(self, browser: Page) -> None: """Тест окна подтверждения удаления сеанса. @@ -323,7 +295,8 @@ class TestSessionsTab: 2. Вход каждого пользователя в систему и создание сеансов 3. Проверка наличия сеанса в таблице 4. Проверка скроллинга таблицы с множеством сеансов - 5. Удаление пользователей выполняется автоматически фикстурой cleanup_users + 5. Проверка подсветки строк таблицы + 6. Удаление пользователей выполняется автоматически фикстурой cleanup_users """ users_data = [ {"name": "TestUser1", "role": "Администратор", "password": "password1"}, @@ -378,6 +351,19 @@ class TestSessionsTab: # Проверка скроллинга таблицы с множеством сеансов self._test_sessions_table_scrolling(sessions_tab) + # Проверка подсветки строк таблицы + rows_count = sessions_tab.get_rows_count() + browser.wait_for_timeout(1000) + + # Проверка подсветки первой строки + sessions_tab.check_sessions_table_row_highlighting(0) + + # Проверка подсветки последней строки (если в таблице более одной строки) + if rows_count > 1: + browser.wait_for_timeout(1000) + sessions_tab.check_sessions_table_row_highlighting(rows_count - 1) + + def _test_sessions_table_scrolling(self, sessions_tab: SessionsTab) -> None: """Вспомогательный метод для проверки скроллинга таблицы сеансов.