(Migrating from Java-Selenium to C#-Selenium)
When searching for explicit waits with Selenium and C# I find several posts with code that looks similar to the Java-Counterpart:
for example here:
WebDriverWait wait = new WebDriverWait(driver, new TimeSpan(0,0,5));
wait.Until(By.Id("login"));
or here:
WebDriverWait wait = new WebDriverWait(driver, 30);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("locator")));
WebDriverWait is from the OpenQA.Selenium.Support.UI namespace and comes in a separate package called Selenium WebDriver Support Classes
BUT:
When I try to code this myself in Visual Studio (getting Selenium package via NuGet), using WebDriverWait in my code will prompt the message:
The type or namespace name 'WebDriverWait' could not be found (are you missing a using directive or an assembly reference?)
Even though I am including the Selenium reference via
using OpenQA.Selenium;
When looking up the documentation for WebDriverWait you will find, that there should be a namespace called
OpenQA.Selenium.Support.UI
But I cannot access it via "using" in my code.
Why does this happen? Where can I find the WebDriverWait class?