Как обнаружить всплывающие уведомления Javascript в WatiN? - PullRequest
2 голосов
/ 19 апреля 2010

У меня есть, кажется, довольно распространенный сценарий, через который я пытаюсь разобраться.

У меня есть сайт, который принимает ввод через два разных текстовых поля. Если ввод неверный или неверный, я получаю всплывающее уведомление Javascript.

Я не всегда получу его, но я должен в случае (как я уже говорил ранее) искаженных данных или когда не удалось найти результат поиска.

Как я могу обнаружить это в WatiN?

Быстрый поиск в Google дал результаты, которые показывают, как нажимать на них, но мне интересно, могу ли я определить, когда я их получу?

На случай, если кому-то интересно, я использую WatiN, чтобы сделать для меня некоторые скриншоты, а не интеграционное тестирование

Заранее спасибо!

Ian

1 Ответ

2 голосов
/ 19 апреля 2010

Вот что я придумал.

Я прочитал этот вопрос несколько раз, прежде чем нашел очевидное решение ..

Могу ли я прочитать окно предупреждения JavaScript с помощью WatiN?

Это код, который я придумал. Хотя он и вызывает задержку в 3 секунды, если предупреждение не происходит, он отлично работает для моего сценария.

Надеюсь, кто-то еще найдет это полезным ..

frame.Button(Find.ByName("go")).ClickNoWait();

System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();
stopwatch.Start();

while (stopwatch.Elapsed.TotalMilliseconds < 3000d)
{
    if (alertDialogHandler.Exists())
    {
        // Do whatever I want to do when there is an alert box.
        alertDialogHandler.OKButton.Click();
        break;
    }
}
...