Selenium Webdriver C#为什么我必须单击两次才能选择单选按钮

时间:2012-12-17 15:09:45

标签: c# selenium webdriver jradiobutton

Selenium Webdriver C# - 为什么我必须单击两次才能选择单选按钮? 这是代码:

weItem_TypeRadio = _driver.FindElement(By.CssSelector("input[name*='" 
                 + stcItemType 
                 + "'][value='HLP'][type='radio']")
                 , _stcintTimeoutInSeconds);
weItem_TypeRadio.Click(); // first click puts a dotted box around radio button
weItem_TypeRadio.Click(); // this click actually selects the radio button

Webdriver v2.8 Asp.net 4.0 C#

2 个答案:

答案 0 :(得分:2)

理论上,您不必点击两次。实际上,IE驱动程序对窗口焦点特别敏感,如果IE窗口始终不是前景焦点窗口,则会发生这种情况。有一个blog post讨论了如何在IE驱动程序中执行点击(使用所谓的“本机事件”)以及使用它们的后果。

答案 1 :(得分:0)

在Selenium WebDriver中使用Java选择单选按钮的代码,

我尝试点击IE浏览器中的单选按钮,这是在表格跨度内部,我几乎没有找到解决方案,最后使用Click作为IE驱动程序的双重语句对窗口非常敏感,它给出了点''首先在带有First Click语句的单选按钮周围,然后再次使用相同的语句(单击)成功选择。

WebDriver WD1;
WD1.findElement(By.id("singles_out_tickets")).click();
WD1.findElement(By.id("singles_out_tickets")).click();