Selenium. Как открыть ссылку на новой вкладке браузера и перейти на эту вкладку?

Код открывает ссылку на новой вкладке

Привожу фрагмент кода

et = Browser.FindElement(By.LinkText("Книги"));
et.SendKeys(OpenQA.Selenium.Keys.Control + OpenQA.Selenium.Keys.Return);

ВОПРОС
Как сделать, чтобы при открытии ссылки в новой вкладке программа ещё и переходила на эту вкладку?

Добавить Shift )
Полагаю как-то так:

et.SendKeys(OpenQA.Selenium.Keys.Control + OpenQA.Selenium.Keys.Shift + OpenQA.Selenium.Keys.Return);
1 лайк

мне помогает для Chrome:

            new Actions(Driver).SendKeys(Keys.Control + Keys.Tab).Perform();
            var mainTab = Driver.CurrentWindowHandle;

            foreach (var window in Driver.WindowHandles)
            {
                if (!window.Equals(mainTab))
                {
                    Driver.SwitchTo().Window(window);
                }
            }

3 лайка

Правильно ли я понимаю, что если просто открыт браузер с двумя вкладки, то данное выражение будет имитировать нажатие Ctrl+Tab? Что в свою очередь приведёт к переключению между вкладками.
Попробовал сделать кнопку, но что-то переключение не происходит

private void button13_Click(object sender, EventArgs e)
        {
            new Actions(browser1).SendKeys(OpenQA.Selenium.Keys.Control + OpenQA.Selenium.Keys.Tab).Perform();

}

Правильно понимаете. Это имитирует, но надо ещё и сам селениум переключить на другое окно используя switch. И тогда в живую Вы увидите переключение.

1 лайк

Что-то не переключает вкладкки в браузере.
Может есть какая-нибудь особенность использования Actions?