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: """Вспомогательный метод для проверки скроллинга таблицы сеансов.