Запретить выход окна браузера на передний план - PullRequest
0 голосов
/ 25 сентября 2019

Я использую метод расширения для вызова взаимодействий на новой вкладке браузера:

    public static void DoInNewTab(this ChromeDriver driver, Action<ChromeDriver> action)
    {
        var currentHandle = driver.CurrentWindowHandle;
        // DOES NOT WORK:
        //driver.FindElement(By.CssSelector("body")).SendKeys(Keys.Control + "t");
        driver.ExecuteScript("window.open()"); // HERE
        Thread.Sleep(2000);
        driver.SwitchTo().Window(driver.WindowHandles.Last());
        action.Invoke(driver);
        driver.Close(); // HERE
        driver.SwitchTo().Window(currentHandle);
    }

Работает как чудо, за исключением того, что окно браузера продолжает активироваться, выходит на передний план и получает фокус.Отлаживать это немного неуклюже, поскольку точки останова, очевидно, активируют окно IDE, но, насколько я вижу, окно браузера активируется в строках, помеченных HERE.

Как я могу предотвратить активацию окна и убедиться, что оно остается в фоновом режиме?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...