Size: a a a

Selenide на русском

2020 November 05

AV

Alexandr Vasilyev in Selenide на русском
c $x("").waitUntil(Condition.visible, secs) не пошло. ругается, что элемента нет. а я этого и жду )
источник

SR

Stas Rusakov in Selenide на русском
Alexandr Vasilyev
Привет!
В старом тестовом фрейворке есть метод
public void waitUntilElementPresent(String xpath, long secs){
       try {
           app.driver.manage().timeouts().implicitlyWait(0, TimeUnit.SECONDS);
           WebDriverWait wait = new WebDriverWait(app.driver, secs);
           wait.until(ExpectedConditions.invisibilityOfElementLocated(By.xpath(xpath)));
       } finally {
           app.driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
       }
   }

есть ли его аналоги в selenide?
да)
Любой элемент селенида автоматически ждет 4 секунды (по умолчанию)) Причем ждет умно - он ждет максимально 4 секунды, если удалось сделать что то раньше - он это сделает раньше
источник

AV

Alexandr Vasilyev in Selenide на русском
этот метод ждет, пока указанный xpath не пропадет. С ожиданием появления пока слава богу всё ок )
источник

SR

Stas Rusakov in Selenide на русском
$("").shouldNotBe(visible);
источник

A

Anton in Selenide на русском
ну или $x("").waitUntil(not(visible), secs)
источник

AS

Andrei Solntsev in Selenide на русском
Артем Гончар
В примерах наткнулся на такой код: одни вызывают closeWebdriver(); в setup методе перед вызовом open(), а другие вызывают closeWebdriver(), в tearDown после прохождения тестов. Как правильно? Смысл вызывать closeWebdriver() до вызова метода open()?
Обычно вызывать самому closeWebDriver() не нужно - селенид сам всё закрывает. Но иногда нужно вызвать, если, например, ты хочешь обязательно новый браузер.
источник

AV

Alexandr Vasilyev in Selenide на русском
Anton
ну или $x("").waitUntil(not(visible), secs)
т.е. в полном виде  $x("").waitUntil(Condition.not(Condition.visible), secs) ?
источник

A

Anton in Selenide на русском
Alexandr Vasilyev
т.е. в полном виде  $x("").waitUntil(Condition.not(Condition.visible), secs) ?
ну да
источник

SR

Stas Rusakov in Selenide на русском
Или так)
$("").shouldNotBe(visible, secs);
источник

АГ

Артем Гончар... in Selenide на русском
Andrei Solntsev
Обычно вызывать самому closeWebDriver() не нужно - селенид сам всё закрывает. Но иногда нужно вызвать, если, например, ты хочешь обязательно новый браузер.
Спасибо! Взял из вашего примера конструкцию через вызов if (hasWebdriverStarted) { closeWebdriver()}
источник

AV

Alexandr Vasilyev in Selenide на русском
Anton
ну да
Element should be not visible {By.xpath: //div[contains(@class,'LayoutContainer')]//*[contains(text(),'Загрузка данных')]}
Element: '<span>Загрузка данных...</span>'
Actual value: visible:true
Timeout: 60 ms.

 at com.codeborne.selenide.impl.WebElementSource.checkCondition(WebElementSource.java:94)
 at com.codeborne.selenide.commands.Should.execute(Should.java:30)
 at com.codeborne.selenide.commands.Should.execute(Should.java:14)
 at com.codeborne.selenide.commands.Commands.execute(Commands.java:152)
 at com.codeborne.selenide.impl.SelenideElementProxy.dispatchAndRetry(SelenideElementProxy.java:104)
источник

BO

Boris Osipov in Selenide на русском
Alexandr Vasilyev
Element should be not visible {By.xpath: //div[contains(@class,'LayoutContainer')]//*[contains(text(),'Загрузка данных')]}
Element: '<span>Загрузка данных...</span>'
Actual value: visible:true
Timeout: 60 ms.

 at com.codeborne.selenide.impl.WebElementSource.checkCondition(WebElementSource.java:94)
 at com.codeborne.selenide.commands.Should.execute(Should.java:30)
 at com.codeborne.selenide.commands.Should.execute(Should.java:14)
 at com.codeborne.selenide.commands.Commands.execute(Commands.java:152)
 at com.codeborne.selenide.impl.SelenideElementProxy.dispatchAndRetry(SelenideElementProxy.java:104)
Timeout: 60 ms.
источник

BO

Boris Osipov in Selenide на русском
60ms - это милисекунды.
источник

AV

Alexandr Vasilyev in Selenide на русском
Boris Osipov
60ms - это милисекунды.
👍
источник

S

Samotlor in Selenide на русском
Dmitry
Добрый вечер. Подскажите пожалуйста, есть ли селенид для JS . А то походу так сложится ситуация что придется переходить с джавы на js , а терять селенид не хочется )))
источник

AN

Alex Nemoy in Selenide на русском
Привет коллеги.
источник

AN

Alex Nemoy in Selenide на русском
Подскажите как прописать проксик в selenide .
Пример на сайте видел - все работает по дефолту
но запускаю тест через selenoid в контейнере - ошибка ERR_PROXY_CONNECTION_FAILED
есть предположение что проксик надо прописать ручками - а что где как ?
источник

VB

Vlad Bak in Selenide на русском
Alex Nemoy
Подскажите как прописать проксик в selenide .
Пример на сайте видел - все работает по дефолту
но запускаю тест через selenoid в контейнере - ошибка ERR_PROXY_CONNECTION_FAILED
есть предположение что проксик надо прописать ручками - а что где как ?
источник

С

Сергей in Selenide на русском
Alex Nemoy
Подскажите как прописать проксик в selenide .
Пример на сайте видел - все работает по дефолту
но запускаю тест через selenoid в контейнере - ошибка ERR_PROXY_CONNECTION_FAILED
есть предположение что проксик надо прописать ручками - а что где как ?
попробуй добавить строчку

Configuration.proxyHost = ClientUtil.getConnectableAddress().getHostAddress();

+ поискать по этому чату "ERR_PROXY_CONNECTION_FAILED" , тут были обсуждения
источник

AN

Alex Nemoy in Selenide на русском
Сергей
попробуй добавить строчку

Configuration.proxyHost = ClientUtil.getConnectableAddress().getHostAddress();

+ поискать по этому чату "ERR_PROXY_CONNECTION_FAILED" , тут были обсуждения
помогло - а поиском почему то искал proxy a не саму ошибку (
спасибо
источник