我是硒和网络驱动程序的新手。我的问题很简单。抱歉,如果您发现这个问题非常基本。我正在使用带有 selenium 2 的 Visual Studio 2010 Ultimate,并在浏览器 IE 9 中使用语言 C#。我尝试执行以下简单代码。
IWebDriver driver = new InternetExplorerDriver(@"D:\IEDriverServer\");
driver.Navigate().GoToUrl("http://www.google.com");
System.Console.WriteLine("Page title is: " + driver.Title);
Console.WriteLine(driver.Title);
Console.WriteLine("Waiting to find element");
IWebElement returnedValue = driver.FindElement(By.Name("q"));
Console.WriteLine("Element Found");
上面的代码抛出了Unable to find the element with name==...
我认为它可能是浏览器加载问题。浏览器没有完全加载,因此导致它显示错误。然后我在 driver.navigate 行之后添加了下面的代码,让它等到浏览器完全加载。
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(20));
wait.Until(ExpectedConditions.TitleIs("Google"));
奇怪的是,它再次忽略了这个 webdriverwait 行并直接跳转到 " wait.until
" 行,导致显示 element not found 错误。我应该怎么办。我在这里错过了什么吗?