На этой неделе убрал из автотеста клик, для которого до этого искал обход.

Сценарий простой: создать строку в справочнике и удалить её. Между этими шагами я добавил клик по строке - логично же сначала выбрать то, что собираешься удалить.

При разборе взаимодействия с таблицей дошёл до dispatch_event("click") - отправки события напрямую элементу.

Но в итоге решение оказалось проще: в текущем интерфейсе последняя созданная строка уже выбрана автоматически. Кнопка «Удалить» работает с текущим выделением, поэтому отдельный клик не требуется.

Более того, повторный клик по ячейке выбранной строки позволяет редактировать значение. Получается, шаг, которым я хотел выбрать строку, в этом состоянии интерфейса уже имел другой смысл.

В финальном варианте убрал и клик, и dispatch_event(). А в Page Object разделил методы для выбора строки, клика по строке и активации редактирования значения.

При ручной работе с таблицей я, возможно, уже видел это автовыделение, но не акцентировал на нём внимание. Когда стал раскладывать сценарий на отдельные действия автотеста, эта деталь оказалась важной.

Для меня ценность этого разбора - в необходимости точнее учитывать состояние интерфейса между шагами. Действие может выглядеть уместным в описании сценария, но в конкретном состоянии выполнять уже другую функцию.

Какие особенности интерфейса вы замечали именно при автоматизации, хотя до этого неоднократно проходили тот же сценарий вручную?

#Playwright #Python #TestAutomation