【问题标题】:Radio button click in Selenium Webdriver在 Selenium Webdriver 中单击单选按钮
【发布时间】:2014-06-06 11:50:25
【问题描述】:

我使用 XPath 编写了单选按钮单击的代码,但在执行代码期间没有单击单选按钮。

我的代码是:

driver.FindElement(By.XPath("//a[contains(id(),rptShoppingServiceGroup_dlAddons_2_ctl01_2)]")).Click();

请帮助如何选择特定的单选按钮,并在选择后移动到另一个单选按钮。

提前致谢。

【问题讨论】:

  • 什么浏览器?那个浏览器是什么版本的?什么版本的硒?它是否找到了元素但只是不点击它?您是否尝试过其他定位器?
  • 单选按钮的实现方式有什么奇怪的地方吗?能发个html吗?

标签: asp.net firefox selenium selenium-webdriver selenium-ide


【解决方案1】:

实际上click() 可以工作,但是webdriver 不能正确刷新用户界面...

我发现的唯一刷新方法是在其上使用submit() 函数。

喜欢:

myRadioBtn.click();
myRadioBtn.submit();

告诉我怎么了 =)

【讨论】:

    【解决方案2】:

    您可能正在检查已选中的单选按钮。因此,现在,您已取消选中您不想要的单选按钮(您希望选中单选按钮)。首先检查单选按钮是否被选中。如果它被选中,不要点击它(否则,它会导致取消选中单选按钮)。如果它没有被选中,那么点击它,它就会被选中。

    button = driver.FindElement(By.XPath("//a[contains(id(),rptShoppingServiceGroup_dlAddons_2_ctl01_2)]"))
    
     if (!button.isSelected()){
        button.click();
        assetTrue(button.isSelected)
     }
    

    【讨论】:

    • 我认为问题在于我试图从自定义窗口中选择单选按钮。如果我们想从弹出窗口中选择单选按钮。如何对其进行编码以供选择。
    • 切换到该窗口 driver.switchTo().window("windowHandle") 然后执行上述操作。
    【解决方案3】:

    您要选中 RadioButton 吗? 如果是,请尝试 ...Checked=true

    var radioButton = driver.FindElement(By.XPath("//a[contains(id(),rptShoppingServiceGroup_dlAddons_2_ctl01_2)]"));
    
    radioButton.Checked=true;
    
    (or radioButton.Click())
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-03
      • 1970-01-01
      • 2017-05-23
      • 2020-01-24
      • 2016-01-30
      • 2020-09-04
      • 1970-01-01
      • 2015-08-22
      相关资源
      最近更新 更多