Size: a a a

Selenide на русском

2018 September 21

SV

Stanislav Vasenkov in Selenide на русском
Alexei Vinogradov
А почему две посл нок?
что?
источник

AV

Alexei Vinogradov in Selenide на русском
Две последних строки nok
источник

SV

Stanislav Vasenkov in Selenide на русском
вот тут все варианты,
Cannot resole symbol 'saveButton'
источник

SV

Stanislav Vasenkov in Selenide на русском

   SelenideElement mainDiv = $("#main_div");
   SelenideElement saveButton = $("#save");
   
   void someMethod() {
       $("#main_div").$("#save").click();  //ok
       $("#main_div").saveButton.click();  //not ok
       mainDiv.$("#save").click();                     //ok
       mainDiv.saveButton.click();                     //not ok
       
       
       
       //it will be useful for different forms with same buttons/elements
   }
источник

SV

Stanislav Vasenkov in Selenide на русском
у меня сейчас такая ситуация разные родительские элементы динамичны (конструктор интерфейсов), навигация внутри них статична, одни и те же id, было бы удобно писать типа
settingsDiv.profileDiv.saveButton.click();
settingsDiv.fontsDiv.saveButton.click();
источник

SV

Stanislav Vasenkov in Selenide на русском
пока альтернатива - в начале пейджа локаторы объявлять стрингами и вызывать типа
String settingsDiv = "#some_id";

$(settingsDiv).$(profileDiv).$(saveButton).click();
источник

BO

Boris Osipov in Selenide на русском
Stanislav Vasenkov

   SelenideElement mainDiv = $("#main_div");
   SelenideElement saveButton = $("#save");
   
   void someMethod() {
       $("#main_div").$("#save").click();  //ok
       $("#main_div").saveButton.click();  //not ok
       mainDiv.$("#save").click();                     //ok
       mainDiv.saveButton.click();                     //not ok
       
       
       
       //it will be useful for different forms with same buttons/elements
   }
ну и как ты в java собрался это реализовывать?)
источник

СР

Саша Росолько in Selenide на русском
Какая-то  каша
источник

СР

Саша Росолько in Selenide на русском
Что-то ты совсем эпическое накидал
источник

SR

Stas Rusakov in Selenide на русском
Не уверен что правильно понял мысль, но возможно вам стоит посмотреть в сторону fluent page object?
Ну или если говорить более общим языком - билдер) возможно это то что вы ищете)
источник
2018 September 22

AV

Alexei Vinogradov in Selenide на русском
Builder совсем для других вещей, в PO не вписывается
источник

SR

Stas Rusakov in Selenide на русском
Эх значит мне одному видится между этими паттернами некое структурное сходство)
Ну я не настаиваю.
Считайте что я сказал только про fluent page object.
источник

AV

Alexei Vinogradov in Selenide на русском
А для каких кейсов нужен флуент в ПО?
источник

LY

Lev Yarushin in Selenide на русском
источник

LY

Lev Yarushin in Selenide на русском
@iTerkin я думаю что как раз под ваши цели пойдёт
источник

SR

Stas Rusakov in Selenide на русском
Alexei Vinogradov
А для каких кейсов нужен флуент в ПО?
Ну задать в коде логику перехода по страницам. А так же последовательность допустимых действий. И как вариант можно организовать так же логику «сборки» элемента. Насколько я понял именно последнее  хочет сделать Станислав.
источник

SR

Stas Rusakov in Selenide на русском
На самом деле не увидел в докладе ничего кроме их extension(если правильно запомнил название) и интерфейсов  из того чего нет у селенида.
источник

AS

Andrei Solntsev in Selenide на русском
Всем привет!
источник

AS

Andrei Solntsev in Selenide на русском
Я зашёл от ужаснулся. Народ, вы чего? Это же просто делается, для этого не нужны вообще никакие фреймворки.
источник

AS

Andrei Solntsev in Selenide на русском
Если по-простому:
By mainDiv = By.id("main_div");
   By saveButton = By.id("save");
   
   void someMethod() {
       $(mainDiv).$(saveButton).click();
   }
источник