Selenium C#. Проблема с WebDriverWait

private void GetInformation(int seconds)
    {
        using (PhantomJSDriverService webDriverService = PhantomJSDriverService.CreateDefaultService())
        { 
            webDriverService.HideCommandPromptWindow = true;

            using (IWebDriver webDriver = new PhantomJSDriver(webDriverService))
            {
                WebDriverWait wait = new WebDriverWait(webDriver, TimeSpan);

            }
        }
    }

Не удалось найти тип или имя пространства имён WebDriverWait

Подключил все нужные библиотеки OpenQA.Selenium (3.141.0), OpenQA.Selenium.Support.UI (3.141.0), ну и OpenQA.Selenium.PhantomJS (2.45.0.1). Загрузил сам PhantomJS (2.1.1) Устанавливал через NuGet. В итоге у меня VS не видит WebDriverWait. В новом Selenium поменялась реализация неявного ожидания? Кто сталкивался, что делать? Не могу найти похожие ситуации.

Такое чувство противное, что я что-то забыл подключить...


Ответы (1 шт):

Автор решения: VoidStack

Узнал, что неявное ожидание можно реализовать следующим образом:

webDriver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(seconds));

ImplicitlyWait - Определяет количество времени, которое драйвер должен ждать при поиске элемента, если он не присутствует немедленно. (с. англ by google translate)

Примечание: При поиске одного элемента драйвер должен опрашивать страницу до тех пор, пока элемент не будет найден или пока не истечет этот тайм-аут, прежде чем выдать исключение OpenQA.Selenium.NoSuchElementException. При поиске нескольких элементов драйвер должен опрашивать страницу, пока не будет найден хотя бы один элемент или не истечет это время ожидания. Увеличение неявного тайм-аута следует использовать разумно, так как это отрицательно скажется на времени выполнения теста, особенно при использовании с более медленными стратегиями определения местоположения, такими как XPath. (с. англ by google translate)

→ Ссылка