Всем добрый день.
Прошу помочь с проблемой. В автотестах использую кастомный декоратор из статьи Selenium: работаем с элементами страницы, используя @FindBy и PageFactory / Хабр (habr.com).
Все работает прекрасно если элементы и контейнеры на странице описаны следующим образом:
@FindBy(xpath = "//*[@class='something']")
public CustomElement element
Проблема возникает, при попытке взаимодействия с списками элементов и контейнеров:
@FindBy(xpath = "//*[@class='something']")
public List<CustomElement> listElements
При попытке взаимодействия со списками вываливается NullPointerException
Я могу что то не правильно понимать, но мне кажется это происходит из-за того, что в классе ExtendedFieldDecorator отсутствуют методы типа decorateListContainer и decorateListElement, в которых возвращались бы списки объектов. Проблема так же заключается в том, что я не уверен точно в том что приходит и что нужно делать, и самое главное как.
Я попытался добавить метод decorateListElement, но он возвращает всегда 0 объектов. А при вызове метода decorateListContainer отрабатывает java.lang.RuntimeException: java.lang.InstantiationException: java.util.List в DefaultContainerFactory
Прошу помочь в решении вопроса.
Пример проекта GitHub - SvyatoslavNovikov/PageFactoryWithCustomDecorator