Тестирование подменю selenium java

Делаю тестовый сценарий, в процессе которого прокликиваются все пункты меню. Если в пунктах есть вложенные подменю, то они тоже прокликиваются. Понимаю, что надо, наверное, как-то через if делать. Если есть подменю, то запускать функцию, которая пройдется по ним, если их нет, то повторять текущую, но пока не очень хорошо знаю java и не понимаю, как это реализовать. Сейчас у меня функции просто гоняют по кругу по одному пункту меню и его подменюшкам. Спасибо за помощь!

Код:

List<WebElement> elementList = driver.findElements(By.cssSelector("#box-apps-menu li a"));
       int numberOfMenuElements = elementList.size();
       for (int i = 0; i < numberOfMenuElements; i++) {
           elementList = driver.findElements(By.cssSelector("#box-apps-menu li a"));
           elementList.get(i).click();
           wait.until(ExpectedConditions.visibilityOfElementLocated(By.tagName("h1")));

           List<WebElement> subMenuElementsList = driver.findElements(By.cssSelector(".docs>li"));
           int numberOfsubMenuElements = subMenuElementsList.size();
           for (int j = 0; j < numberOfsubMenuElements; j++) {
               subMenuElementsList = driver.findElements(By.cssSelector(".docs>li"));
               subMenuElementsList.get(j).click();
               wait.until(ExpectedConditions.visibilityOfElementLocated(By.tagName("h1")));
           }

       }

Ответы (0 шт):