Size: a a a

Selenide на русском

2020 May 01

AS

Andrei Solntsev in Selenide на русском
Ага, три команды:
1. Позвонить пользователю
2. Убрать две проверки
3. Помощь зала
источник

A

Amidoshka in Selenide на русском
Alexei Barantsev 🗹
надо в селенид добавить команду "позвонить пользователю и попросить заполнить форму вручную" :)
а это идея, спасибо за наводку
источник
2020 May 02

А

Александр in Selenide на русском
вопрос, как можно перехватить исключение у SelenideElement?
например есть код
try {
           return $(tableCell).exists() ? $(tableCell).getText() : "";
       } catch (WebDriverException e){
           logger.info(format("No text was found in specified location: row: %d cell: %d.\n" +
                   "Returning empty string!", row, cell));
           return "";
       }

при этом оно может упасть с
Element not found {tbody > tr:nth-of-type(1) > td:nth-of-type(4)}
Expected: exist

Caused by: NoSuchElementException: no such element: Unable to locate element: {"method":"css selector","selector":"tbody > tr:nth-of-type(1) > td:nth-of-type(4)"}
источник

А

Александр in Selenide на русском
теоретически если NoSuchElementException является подклассом WebDriverException то оно должно перехватываться имеющимся блоком catch ?
источник

А

Александр in Selenide на русском
Во всяком случае если мы работаем просто с WebElement это действительно так работает, а здесь почему-то нет..
источник

А

Александр in Selenide на русском
не говоря о том что тут уже встроено условие, что если элемент не обнаружен, то нужно вернуть "";
источник

AS

Andrei Solntsev in Selenide на русском
источник

А

Александр in Selenide на русском
))) спасибо
источник

А

Александр in Selenide на русском
беда.. значит придется в этом конкретном месте без селенида
источник

AK

Andrey K in Selenide на русском
Эмммм. А tableCell.shouldHave(text("blahblah")); не катит?
источник

AK

Andrey K in Selenide на русском
К чему эта наркомания с try catch?
источник

А

Александр in Selenide на русском
наступает момент в тестах когда shouldHaveText дискретно
источник

А

Александр in Selenide на русском
этот метод забирает текст из ячейки таблицы если таблица есть
источник

А

Александр in Selenide на русском
точнее таблица есть всегда, не всегда есть ячейка
источник

AK

Andrey K in Selenide на русском
Аааа, это видимо кейс с баннером из ссылки выше? Там тоже баннер есть не всегда
источник

А

Александр in Selenide на русском
нет.
это кейс когда количество рядов в таблице заранее неизвестно.
источник

А

Александр in Selenide на русском
точнее, может наступить момент когда оно будет неизвестно.
источник

А

Александр in Selenide на русском
это просто отдельный метод который ничего не знает о таблице.
он просто забирает текст из табличной ячейки если она есть.
источник

AK

Andrey K in Selenide на русском
А почему не сэмулировать ситуацию когда количество рядов будет известно? А как вы этот кейс вручную тестируете? Что это за тестирование такое с неизвестными шагами?
источник

А

Александр in Selenide на русском
"сэмулировать" можно все что угодно. вопрос целесообразности.
в данном случае мне нужно чтобы работало так как описано выше.
источник