Я использую XPath/CSS и Selenium для поиска элементов на веб-сайте. Я хочу создать метод, в котором я повторяю список локаторов (XPath/CSS), и программа выбирает то, что работает. Другими словами, он начинается с локатора - если локатор присутствует, он возвращает true и существует цикл. В противном случае он переходит к следующему локатору в списке. Как только он исчерпывает все локаторы CSS, он переходит к XPath и так далее.Selenium: Iterate Through Element List
В настоящее время, я имею в виду реализации этого следующим образом:
public boolean iterate(WebDriver driver, By selectorType, String[] locator)
{
driver.get("URL");
for(int selectorListCounter = 0; selectorListCounter < locator.length; selectorListCounter++) {
try
{
driver.findElement(By.(selectorType)).sendText();
System.out.println("CSS Selector: " + CSS + " found");
return true;
} catch (Exception e)
{
System.out.println(CSS + " CSS Selector Not Present");
return false;
}
}
Затем я планирую вызвать этот метод для каждого типа локатора (один раз для XPath, один раз для CSS и т.д.)
ли это лучший способ?
Не могли бы вы рассказать мне, зачем вам это нужно? –
Помог ли один из ответов? Или вы решили пойти с другим решением? –