无法双击selenium Web驱动程序c#

本文关键字:驱动程序 Web selenium 双击 | 更新日期: 2023-09-27 18:26:11

我正试图使用c#Selenium WebDriver中的Actions类双击选择框中的一个选项。以下代码适用于firefox,但不适用于IE或Chrome。关于我为什么或如何调查出了什么问题,有什么建议吗?

var sideBarAgentList = new SelectElement(driver.FindElement(By.CssSelector("#agentSelectBox")));
var agentInList = sideBarAgentList.Options.First(o => o.Text == "Agent49159 - 49159");
new Actions(driver).DoubleClick(agentInList).Perform();

HTML是

<select id="agentSelectBox" ondblclick="javascript:addAgentDesktop(this.selectedIndex);" onchange="javascript:showAgentInfo(this.selectedIndex);" style="width:220px;background:#e0e0e0;font-family:Verdana;font-size:75%;" size="22">
  <option value="0" style="background:white;color:blue">
      Agent49159 - 49159
  </option>
</select>

无法双击selenium Web驱动程序c#

根据我所知,双击操作在IE或Chrome中对select元素中的选项不起作用。我已经更新了代码,从select菜单中单击该选项,然后双击select元素本身而不是该选项。适用于FF、IE和Chrome。

new SelectElement(driver.FindElement(By.CssSelector("#agentSelectBox"))).Options.First(o => o.Text == "Agent49159 - 49159").Click();;       
new Actions(driver).DoubleClick(driver.FindElement(By.CssSelector("#agentSelectBox"))).Perform();

尝试更改此行:new Actions(driver).DoubleClick(agentInList).Perform();

到:new Actions(driver).DoubleClick(agentInList).build().Perform();

与user3198015一样,我发现Selenium的双击操作在Firefox中有效,但在Chrome中无效。解决方法是使用两次单击事件,如我对这个相关问题的回答所示。