【发布时间】:2011-11-11 16:27:38
【问题描述】:
我已经像在文档中那样编写了示例:
var driver = new InternetExplorerDriver();
driver.Navigate().GoToUrl("http://google.com");
var query = driver.FindElement(By.Name("q"));
query.SendKeys("Cheese");
Console.WriteLine("Title is: " + driver.Title);
driver.Quit();
但我总是收到Unable to find element with name == q 错误。
打开 IE9,加载 google 页面,我可以阅读 driver.Title,但无法通过名称、选择器或 id 找到任何元素。
有什么想法吗?
UPD:
可怕的是,这段代码在我的桌面(Windows 7、VS 2010 Express)上运行,在虚拟机中不起作用(VmWare 播放器、Windows 2008 R2 SP 1 试用版、VS 2010 Ultimate 试用版):-( p>
而且它不适用于自定义虚拟 <input name="q" /> 页面
UPD 2:
该代码适用于 Firefox 驱动程序,但不适用于 IE。
解决方案:
对于 Windows 服务器安装,该站点似乎应该处于“受信任”状态。我不知道为什么,但是将 google.com 添加到受信任的解决了一个问题
【问题讨论】: