Есть приложения на Ява.
Для него пишу автотест.
Есть функция отправки сообщения (Select tab - функция выбора и клика по нужному табу).
public static void sendMSG(String MSG){
selectTab(2);
//техтовое поле
WebElement text = new WebDriverWait(driver, 10).until(ExpectedConditions.presenceOfElementLocated(By.id("page:j_id191:messageText")));
//кнопка
WebElement button = new WebDriverWait(driver, 10).until(ExpectedConditions.presenceOfElementLocated(By.id("page:j_id191:j_id208")));
text.sendKeys(MSG);
button.click();
}
Далее хочу отправить 100 сообщений кодом
for (int i=0; i<100; i++){
sendMSG("autotest#"+i);
}Первый раз все выполняет. На второй раз (при i==1) автотест падает со следующим ексепшином
Ошибка происходит в строчке button.click.getElementTagName execution failed;
Element does not exist in cache (WARNING: The server did not provide any stacktrace information)
Но, если в функцию selectTab() в конце добавить Thread.sleep(500) - все работает.
В чем может быть проблемма и как её исправить.
Почему в первый раз скрипт обрабатывает?

