Тестирование подменю 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")));
}
}