Добавлены тесты поля Имя

main
Radislav 2026-03-20 11:21:47 +03:00
parent 713cfd6126
commit e1e166b878
2 changed files with 64 additions and 11 deletions

View File

@ -347,6 +347,7 @@ class TestCreateRack:
logger.debug("System prevented creating rack with duplicate name")
@pytest.mark.develop
def test_required_fields_validation(self, browser: Page, cleanup_racks) -> None:
"""Тест проверки обязательных полей при создании стойки."""
logger.debug("Starting required fields validation test")
@ -368,29 +369,31 @@ class TestCreateRack:
rack_form = CreateRackForm(browser)
# ========== Тест 1: Обязательные поля высота и глубина пустые ==========
# ========== Тест 1: Обязательные поля имя, высота и глубина пустые ==========
logger.debug("Test 1: Both required fields (height, depth) are empty")
# Очищаем поля высоты и глубины перед заполнением
# Очищаем поля имя, высоты и глубины перед заполнением
rack_form.clear_field("Имя")
rack_form.clear_field("Высота в юнитах")
rack_form.clear_field("Глубина (мм)")
test_data_1 = CreateRackData(
name=self.TEST_RACK_NAME,
name="",
usize="",
depth=""
)
rack_form.fill_rack_data(test_data_1)
self.create_child_frame.click_add_button()
self.create_child_frame.wait_for_timeout(500)
# Проверяем alert для высоты, глубины
# Проверяем alert для имени, высоты, глубины
self.alert.check_alert_presence(expected_alert_text_name, timeout=7000)
self.alert.check_alert_presence(expected_alert_text_height, timeout=7000)
self.alert.check_alert_presence(expected_alert_text_depth, timeout=7000)
# Проверяем, закрылся ли автоматически alert для высоты, глубины
self.alert.check_alert_absence(expected_alert_text_height, timeout=7000)
# Проверяем, закрылся ли автоматически alert для имени, высоты, глубины
self.alert.check_alert_absence(expected_alert_text_name, timeout=7000)
self.alert.check_alert_absence(expected_alert_text_height, timeout=500)
self.alert.check_alert_absence(expected_alert_text_depth, timeout=500)
# Проверяем подсветку полей
@ -465,7 +468,6 @@ class TestCreateRack:
rack_form.fill_rack_data(test_data_4)
self.create_child_frame.click_add_button()
self.create_child_frame.wait_for_timeout(500)
# Проверяем alert для имени
self.alert.check_alert_presence(expected_alert_text_name, timeout=7000)
@ -474,3 +476,6 @@ class TestCreateRack:
self.alert.check_alert_absence(expected_alert_text_name, timeout=7000)
logger.debug("Test 4 completed: System correctly validates empty name field")
# ========== Тест 5: Поле "Имя" не более 35 знаков ==========
# разработчик должен ограничить длину имени - не более 35 знаков

View File

@ -304,7 +304,7 @@ class TestRackEdit:
rack_edit.click_done_button()
# Проверяем уведомление об успешном обновлении
expected_alert_text = "Элемент успешно обновлён"
expected_alert_text = "Успешно обновлено"
self.alert.check_alert_presence(expected_alert_text, timeout=7000)
self.alert.check_alert_absence(expected_alert_text, timeout=7000)
@ -336,6 +336,54 @@ class TestRackEdit:
logger.debug("General info tab test completed successfully")
def test_required_field_name_validation(self, browser: Page) -> None:
"""Тест проверки обязательного поля ИМЯ при создании стойки."""
logger.debug(f"Starting required field name validation test for rack: {self.RACK_NAME}")
rack_page = RackPage(browser)
# Переходим в режим редактирования
rack_page.click_edit_button()
# Создаем экземпляр EditRackMaker
rack_edit = EditRackMaker(browser, self.RACK_NAME)
# ========== Тест 1: Обязательное поле имя пустое ==========
# Очищаем поле имя
rack_edit.clear_field("Имя")
# Создаем тестовые данные для заполнения поля
test_data_1 = EditRackData(
name=""
)
rack_edit.fill_rack_data(test_data_1)
rack_edit.click_done_button()
# Проверяем уведомление об ошибочном обновлении
expected_alert_text = "поле ИМЯ должно быть заполнено, и не должно превышать 35 знаков"
self.alert.check_alert_presence(expected_alert_text, timeout=7000)
self.alert.check_alert_absence(expected_alert_text, timeout=7000)
# ========== Тест 2: Обязательное поле имя не должно превышать 35 знаков ==========
# Создаем тестовые данные для заполнения поля
test_data_2 = EditRackData(
name="_123456789_123456789_123456789_12345"
)
rack_edit.fill_rack_data(test_data_2)
rack_edit.click_done_button()
# Проверяем уведомление об ошибочном обновлении
expected_alert_text = "поле ИМЯ должно быть заполнено, и не должно превышать 35 знаков"
self.alert.check_alert_presence(expected_alert_text, timeout=7000)
self.alert.check_alert_absence(expected_alert_text, timeout=7000)
rack_edit.click_close_button()
logger.debug("Required field name validation test completed successfully")
def test_rack_image_tab(self, browser: Page) -> None:
"""Тест вкладки 'Изображение' стойки."""
@ -376,7 +424,7 @@ class TestRackEdit:
rack_edit.click_done_button()
# Проверяем уведомление об успешном обновлении
expected_alert_text = "Элемент успешно обновлён"
expected_alert_text = "Успешно обновлено"
self.alert.check_alert_presence(expected_alert_text, timeout=7000)
self.alert.check_alert_absence(expected_alert_text, timeout=7000)
@ -466,7 +514,7 @@ class TestRackEdit:
rack_edit.click_done_button()
# Проверяем уведомление об успешном обновлении
expected_alert_text = "Элемент успешно обновлён"
expected_alert_text = "Успешно обновлено"
self.alert.check_alert_presence(expected_alert_text, timeout=7000)
self.alert.check_alert_absence(expected_alert_text, timeout=7000)