Я использую WebDriver для проверки элементов на странице с помощью селектора CSS.С помощью созданного мною следующего метода 'checkTablesByHeader'.
public static void checkTablesByHeader(WebDriver driver, String[] columnHeaderValues, String tableID, String selector){
String elementSelector = "#" + tableID + " "+selector;
List<WebElement> elements = driver.findElements(By.cssSelector(elementSelector));
int i = 0;
for (WebElement e : elements){
Assert.assertTrue(e.getText().contains(columnHeaderValues[i]));
i++;
}
Моя проблема заключается в использовании этого метода в цикле, как показано ниже.Первый проход работает отлично и захватывает только девять элементов в Списке.Второй проход должен иметь такое же точное число, но возвращает более 300 элементов.Я делаю это, потому что у меня есть таблицы, которые имеют очень похожую структуру, но только разные идентификаторы.Я проверил и перепроверил, что идентификатор на втором проходе может вернуть только 9 элементов с текущим кодом.
for(int i=1; i<6; i++){
SeleniumUtil.checkTablesByHeader(driver, stringArrayNine, ("mqContent_a_" + i), "th");
}
У кого-нибудь есть идеи?Заранее спасибо.