Size: a a a

Selenide на русском

2020 June 09

S

Sergey Sergey in Selenide на русском
Использую RemoteWebDriver
источник

SR

Stas Rusakov in Selenide на русском
Sergey Sergey
Коллеги, подскажите, если я руками создаю инстанс драйвера и делаю setWebDriver(newDriver) - куда денется старый инстанс?
Не стоит использовать этот метод.
источник

VS

Vitaliy Shalaev in Selenide на русском
Сработало вот так : open(Paths.get("target", "report.html").toUri().toURL());
источник

SR

Stas Rusakov in Selenide на русском
Sergey Sergey
кейс - переподключение к приложению по имени окна без его закрытия
Разве не поможет просто сделать
open("имя окна");
?
источник

S

Sergey Sergey in Selenide на русском
Stas Rusakov
Разве не поможет просто сделать
open("имя окна");
?
Я использую WinAppDriver окно уже запущено. Задача убить текущий драйвер и заново переподключить к нему новый, не закрывая окно приложения
источник

S

Sergey Sergey in Selenide на русском
Есть проблема, связанная с невозможностью перегрузить дерево элементов в приложении. driver.refresh() для винды не предусмотрен. Единственное, что пока помогло, это переподключение драйвера
источник

S

Sergey Sergey in Selenide на русском
Криво, страшно, но оно хоть работает
источник

S

Sergey Sergey in Selenide на русском
вопрос в том, что делать со старым инстансом?
источник

AS

Andrei Solntsev in Selenide на русском
Sergey Sergey
вопрос в том, что делать со старым инстансом?
Похоже, что ничего не надо делать.
источник

S

Sergey Sergey in Selenide на русском
Спасибо!
источник
2020 June 10

Ri

Rustam is not a func... in Selenide на русском
Кто может подскажите, как можно приатачить скиншот который делает selenide к failed тесту в RP. Счс делаю отдельный скриншот и аттачу его, сильно не нравиться такой подход, но метод  Screenshots.getLastScreenshot()) не срабатывает. Аттачу так в классе
CustomListenеr extends ReportPortalTestNGListener 

ReportPortal.emitLog(testResult.getThrowable().toString(), "ERROR",                     Calendar.getInstance().getTime(), Screenshots.getLastScreenshot());
источник

ON

Olzhas Nuralinov in Selenide на русском
подскажите, я же правильно понимаю, что в Selenide при реализации PageObject можно использовать только поля SelenideElement или ElementsCollection? в смысле нельзя свои типы юзать?
например:
public class SomePage {
   @FindBy(xpath = "someXpath")
   public List<MyType> myTypeList;
}

@Getter
@NoArgsConstructor
public class MyType {
   @FindBy(tagName = "h3")
   private SelenideElement name;
   @FindBy(tagName = "img")
   private SelenideElement picture;
}

@Slf4j
public class SomeTest {
   @Test
   public void someTest() {
       SomePage page = Selenide.open("/", SomePage.class);
       log.info("name: {}", page.myTypeList.get(0).getName().getText()); // вот тут NPE, так как page.myTypeList = null
   }
}
источник

AS

Andrei Solntsev in Selenide на русском
Насколько я помню, можно свои типы, но они должны наследоваться от ElementsContainer.
источник

AV

Alexei Vinogradov in Selenide на русском
Olzhas Nuralinov
подскажите, я же правильно понимаю, что в Selenide при реализации PageObject можно использовать только поля SelenideElement или ElementsCollection? в смысле нельзя свои типы юзать?
например:
public class SomePage {
   @FindBy(xpath = "someXpath")
   public List<MyType> myTypeList;
}

@Getter
@NoArgsConstructor
public class MyType {
   @FindBy(tagName = "h3")
   private SelenideElement name;
   @FindBy(tagName = "img")
   private SelenideElement picture;
}

@Slf4j
public class SomeTest {
   @Test
   public void someTest() {
       SomePage page = Selenide.open("/", SomePage.class);
       log.info("name: {}", page.myTypeList.get(0).getName().getText()); // вот тут NPE, так как page.myTypeList = null
   }
}
я вот топлю за то, чтобы не использовать FindBy и page() метод селенида. PageObject отлично получается и без них.
источник

ON

Olzhas Nuralinov in Selenide на русском
Andrei Solntsev
Насколько я помню, можно свои типы, но они должны наследоваться от ElementsContainer.
это помогло. спасибо!
источник

ON

Olzhas Nuralinov in Selenide на русском
Alexei Vinogradov
я вот топлю за то, чтобы не использовать FindBy и page() метод селенида. PageObject отлично получается и без них.
но без них получается больше кода =(
источник

AS

Andrei Solntsev in Selenide на русском
Olzhas Nuralinov
но без них получается больше кода =(
Да ладно! Не верю.
источник

AS

Andrei Solntsev in Selenide на русском
Давайте разбираться. Ща ещё вдвое сократим.
источник

AV

Alexei Vinogradov in Selenide на русском
Olzhas Nuralinov
но без них получается больше кода =(
Вроде наоборот - меньше 🙂
источник

А

Александр in Selenide на русском
ну да. потому что +1 строчка из за аннотации.
источник