Selenium - ' ITimeouts.ImplicitlyWait(TimeSpan)'已经过时了

时间:2017-02-21 13:27:28

标签: c# .net unit-testing selenium selenium-webdriver

我使用C#项目设置隐含:

driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(20));

一切顺利。当我安装新版本的selenium-dotnet-3.1.0时,我的声音出现了这个错误:

  

警告CS0618' ITimeouts.ImplicitlyWait(TimeSpan)'已经过时了:'这个   方法将在以后的版本中删除。请设置   而是ImplicitWait属性。'

如何设置全局ImplicitlyWait时间?

3 个答案:

答案 0 :(得分:43)

我遇到了同样的问题。您可以使用以下代码:

driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(20);

答案 1 :(得分:1)

我使用Selenium.WebDriver v3.2.0包(来自NuGet),但我不能使用ImplicitlyWait属性:

RemoteDriver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), _capabilities);
driver = new EventFiringWebDriver(RemoteDriver);
driver.Manage().Timeouts().ImplicitlyWait = TimeSpan.FromSeconds(defaultTimeOut);

返回:无法分配到' ImplicitlyWait'因为它是一个'方法组'

但是driver.Manage()。Timeouts()。ImplicitlyWait(defaultTimeOut)运行良好,但显示有关新用法的警告。

答案 2 :(得分:0)

还可以使用add方法并传入TimeSpan:

Driver.Manage().Timeouts().ImplicitWait.Add(TimeSpan.FromSeconds(20));