Каждый раз, когда вы звоните Confirmation.Text
WatiN ждет, пока элемент не существует. По истечении этого времени ElementNotFoundException
выбрасывается. По умолчанию WatiN ждет 30 секунд для отображения элемента. Это можно изменить, установив значение Settings.WaitUntilExistsTimeOut
.
Чтобы решить свою проблему, вы можете сделать несколько вещей. Например, вы можете изменить эту строку:
return Confirmation.Text != "";
до
return Confirmation.Exists && Confirmation.Text != "";
Но вы должны помнить, что это вернет false
, даже если этот элемент появится через 1 секунду. Если вы хотите использовать это решение, я думаю, что вам не нужно перехватывать это исключение, если вы уверены, что как только оно появится, оно не будет удалено.
Конечно, вы можете изменить значение Settings.WaitUntilExistsTimeOut
. Если вы не хотите изменять это значение, но хотите немного подождать, вы можете заменить свой геттер следующим кодом:
try
{
Confirmation.WaitUntilExists(1); //Wait only one second
return Confirmation.Text != "";
}
catch (WatiN.Core.Exceptions.TimeoutException) //Different exception!
{
return false;
}