selenium 2 - C# SelectElement 未在 Chrome 中选择
我在 C# 中使用以下代码在下拉列表中选择一个值:
new SelectElement(driver.FindElement(By.Name("element"))).SelectByIndex(2);
这适用于 Firefox 和 IE8,但不适用于 Chrome,不会选择任何内容。 SelectElement 是否存在任何已知问题?有什么其他方法可以让它在 Chrome 中工作吗?
我正在使用独立服务器 2.0rc3 和 Chrome 12
I'm using the following code in C# to select a value in a dropdown list:
new SelectElement(driver.FindElement(By.Name("element"))).SelectByIndex(2);
This works with Firefox and IE8 but not with Chrome, nothing gets selected. Are there any know issues with SelectElement? Any alternatives to get it to work in Chrome?
I'm using the standalone server 2.0rc3 and Chrome 12
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
对于遇到此问题的其他人,我通过单击元素并发送键来选择值来解决它,如下所示:
For anyone else having this problem, I solved it by clicking on the element and sending the keys to select the value, so something like:
这是 Chrome 驱动程序的一个已知问题。 IWebElement.Select() 和 .Toggle() 方法在 2.0RC3 中已弃用,需要您使用 .Click() 代替。 SelectElement 支持类已更新以处理此更改;然而,ChromeDriver.exe(由 Chromium 团队构建和提供)尚未赶上。因此,在元素上使用 IWebElement.Click() 在 Chrome 中尚不工作。
This is a known issue with the Chrome driver. The IWebElement.Select() and .Toggle() methods were deprecated in 2.0RC3, requiring you to use .Click() instead. The SelectElement support class was updated to handle this change; however, the ChromeDriver.exe (which is built and provide by the Chromium team) has yet to catch up. So using IWebElement.Click() on an element doesn't yet work in Chrome.