Size: a a a

Selenide на русском

2019 November 12

AS

Andrei Solntsev in Selenide на русском
Если что, 12 - это миллисекунд. Такие таймауты только Чак Норрис в своих тестах использует.
источник

VD

Vadim D in Selenide на русском
Andrei Solntsev
Если что, 12 - это миллисекунд. Такие таймауты только Чак Норрис в своих тестах использует.
согласен, опечатка. 12000 поставил. все равно без изменений.
клики идут слишком быстро, страница не ожидает загрузки собственно ничего
источник

AB

Anton Babin in Selenide на русском
Vadim D
помогает добавление waitUntil(Condition.visible, 12).click();
есть ли менее костыльное решение?
На фронте ангуляр2
также выставил
       Configuration.pageLoadStrategy = "eager";
почему костыльное? вы же хотите дожидаться появления элементов?
источник

AB

Anton Babin in Selenide на русском
или какой нибудь свой клик сделайте
источник

AB

Anton Babin in Selenide на русском
public void click(SelenideElement element){
   element.waitUntil(visible, WAIT_5_SECONDS);
   element.shouldBe(enabled);
   element.click();
}
источник

AB

Alexei Barantsev in Selenide на русском
Vadim D
недавно начал пользоваться селенидом
столкнулся с проблемой - клики происходят ДО того как страница полностью загрузилась, в итоге клик не дает никакого результата
как с таким бороться?
надо исправить баги в приложении. у пользователя не должно быть возможности кликнуть по элементу до того момента, когда клик будет результативным
источник

КИ

Константин Ирышков in Selenide на русском
Константин Ирышков
Credits.getShopUrl() при дебаге показывает верный адрес
В общем поресерчил проблему, скорее всего проблема именно  в сайте, он не открывается, даже если писать  его открытие первым. Пошёл разбираться с разрабами
источник

AB

Alexei Barantsev in Selenide на русском
что-то мы в чатике про JS зацепились языками на тему перепоиска потерянных элементов...
я правильно понимаю, что селенид не делает перепоиск для списков?
источник

AB

Alexei Barantsev in Selenide на русском
то есть
open("http://litecart.stqa.ru/en/");
$$("#site-menu > ul > li").forEach(item -> item.$("a").click());

вот эта штука на второй итерации выбрасывает StaleElementReferenceException и это так и должно быть?
источник

AZ

Alexander Zapevalov in Selenide на русском
что подразумевается под перепоиском?
источник

AB

Alexei Barantsev in Selenide на русском
если при действии с элементом возникает StaleElementReferenceException, инструмент автоматически выполняет повторный поиск, пытается восстановить элемент, то есть найти новый элемент по тому же локатору
источник

AV

Alexei Vinogradov in Selenide на русском
Alexei Barantsev
то есть
open("http://litecart.stqa.ru/en/");
$$("#site-menu > ul > li").forEach(item -> item.$("a").click());

вот эта штука на второй итерации выбрасывает StaleElementReferenceException и это так и должно быть?
и да, и нет) У меня в докладах про это прагматический слайд  - "Не итерируй коллекцию"
источник

AB

Alexei Barantsev in Selenide на русском
а нафиг ещё нужны коллекции? :)
источник

AV

Alexei Vinogradov in Selenide на русском
Механизмы постоянного перепоиска сильно замедляли в случае коллекции, и поэтому их убрали.
источник

AB

Alexei Barantsev in Selenide на русском
убрали вообще? или просто по дефолту отключено, но можно включить?
источник

AV

Alexei Vinogradov in Selenide на русском
Alexei Barantsev
а нафиг ещё нужны коллекции? :)
ну это уже другой вопрос. Для нахождения нужны элементов пока что. И проверки (возможности проверок ограничены)
источник

AV

Alexei Vinogradov in Selenide на русском
Alexei Barantsev
убрали вообще? или просто по дефолту отключено, но можно включить?
я когда-то накодярил хитрую логику, которая определялась прогрузилась коллекция или нет, но она тоже не в 100% работала и СИЛЬНО тормозила.
источник

AB

Alexei Barantsev in Selenide на русском
а история правок сохранилась? хочу посмотреть, на каких примерах тормозила
источник

AB

Alexei Barantsev in Selenide на русском
парни из JS-чатика пытаются пропихнуть идею добавить больше ленивости и перепоиска в webdriver.io, если действительно на этом пути возникают проблемы с производительностью — может быть стоит их сразу предупредить об этом
источник

AS

Andrei Solntsev in Selenide на русском
Нет, медленность была только потому, что итерировали тяжёлую коллекцию в 100+ элементов
источник