Никак не получается искать элемент в элементе. Пытаюсь сделать на Selenide, но ничего не выходит. Если напрямую писать xpath, то всё работает, но такие нагромождения для каждого элемента в классе просто нецелесообразны. Допустим у меня есть некий блок на странице
в него можно добавлять произвольное количество выходов общий локатор для которых будет
private By emptyOutput = By.xpath("//div[@name='typeahead_output_name']");
в каждом этом элементе есть ещё кое какие кнопочки. Например такая
private By dropBtn = By.xpath("//button[contains(@class,'dropdown-toggle')]");
Она открывает список (ul), из которого я могу выбрать какое-то значение.
В моём тесте я должен выбрать какое-то значение из выпадающего списка в последнем emptyOutput
Думал прокатит так
int size = $(emptyOutput).size(); $$(emptyOutput).get(size-1).$(dropBtn).click();
ничего подобного - как только выходов несколько - кликается по первой найденой dropBtn - то есть ищется не внутри элемента а по всему DOM. Как это расценивать - как баг, или как моё неумение пользоваться Selenide? Ведь получается, если на странице ещё где-то раньше есть такая кнопка, будет кликаться она. Зачем тогда этот chaining, если он не работает?