Webdriver, CSharp, C#-Невозможно переключаться между окнами

Я застрял при попытке переключения окон с помощью последней версии веб-драйвера на C #.

У меня есть базовое окно, когда я нажимаю кнопку, открывается новое окно.

Целевой код для этой кнопки показан ниже.

window.open(uri, "DisplayPage", " width=1200, scrollbars=yes, resizable = yes,   toolbar =  no, menubar =  no");

Я использую приведенный ниже код для перехода к новому окну.

   string BaseWindow = _driver.CurrentWindowHandle;

   ReadOnlyCollection<string> handles = _driver.WindowHandles;

    foreach (string handle in handles)
    {

        if (handle != BaseWindow)
        {
            _driver.SwitchTo().Window(handle).Title.Equals("DisplayPage");

        }
    }
}

Как видно из вышеизложенного, я переключаюсь на окно, используя целевой заголовок из базового окна. Это не работает.

Затем я заметил, что заголовок открытого окна был другим, это было «Показать -страницу транзакции»

Затем я изменил код на этот

 string BaseWindow = _driver.CurrentWindowHandle;

       ReadOnlyCollection<string> handles = _driver.WindowHandles;

        foreach (string handle in handles)
        {

            if (handle != BaseWindow)
            {
                _driver.SwitchTo().Window(handle).Title.Equals("Display - Transaction Page");

            }
        }
    }

Все еще не повезло.

Интересно, что я не получаю никаких сообщений об ошибке "Окно не найдено".

Проблема в том, что когда я пытаюсь щелкнуть элемент на только что открытой странице, я получаю NoSuchElementException, что означает, что только что открытое окно не было выбрано.

Есть идеи?

С уважением,

Хасан

5
задан Hasan Aziz 24 April 2012 в 13:32
поделиться