jdi-testing / jdn-ai

JDN – is the Chrome plugin for UI test automation. It helps Software Test Automation Engineer to create Page Objects for the test automation framework and start test development fast
MIT License
9 stars 3 forks source link

Создать Stop the World чекбокс #1676

Open AlexeyGirin opened 8 months ago

AlexeyGirin commented 8 months ago

Problem statement/business needs:

Сейчас, когда мы ищем элементы на страничке и создаём для них локаторы - мы исходим из ассампшена что страничка статическая и никак не может измениться в момент когда мы нажали кнопку Generate All (ну или Empty PO) Однако - статические странички - это редкость. Зачастую - на страничке работает какой-нить скрипт которы изменяет её состояние или контент динамически. Эти изменения могут сделать найденные и уже посчитанные локаторы - невалидными. @Iogsotot утверждает, что возможно по нашему хотению - остановить время (т.е. сделать Stop the World) если нам это надо. Поэтому - нужно дать пользователю возможность останавливать и обратно запускать исполнение скриптов на страничке По умолчанию - эта опция должна быть включена Мне это видится как некоторый чекбокс на панели найденных локаторов, но я не настаиваю - Семён должен решить. Убеждения, что отключать исполнение скриптов мы можем только после поиска локаторов - тоже нет. Возможно, дать пользователю возможность отключить мир нужно сразу как он открыл плагин - это варинат. Это было бы удобно для ситуации когда на страничке есть динамическое меню и оно исчезает если пользователь уводит мышку. А тут - он навёл мышку - нажал F12 - состояние странички зафиксировалось - можно искать локаторы куда и локаторы меню тоже попадут. Удобно

Definitions of Done:

  1. Пользователь может остановить исполнение скриптов на страничке и сделать страничку true-статической
  2. Пользователь может запустить обратно исполнение скриптов на страничке и сделать страничку опять динамической (если она была)

Dependencies or related tasks:

Comments:

SemyonKuznetsov commented 8 months ago

это должно быть на этапе настройки РО для генерации? или когда уже сгенерированы локаторы?

Iogsotot commented 8 months ago

@SemyonKuznetsov фича на этапе инвестигации (возможно ли вообще реализовать), пока что дизайн не нужен. Когда будет понятно как это сделать технически, можно будет обсудить место для кнопки в UI

@AlexeyGirin я не утверждаю, что это возможно сделать с помощью скриптов по нашему хотению. Теоретически, браузер на это способен. Но не всё, что может браузер можно вызвать с помощью скриптов. Необходимо изучить вопрос, понять как это сделать и только потом переходить к другим этапам реализации задачи.