selenium2: Click radio button 不生效的解决方法

解决WebDriver无法稳定点击页面底部RadioButton的问题,通过调整代码逻辑实现稳定的元素交互。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

问题: 我们测试站点上的某一个radio button老是点不到
 
测试代码: 
               WebElement radio = driver.finElement(By.id("id"));
                if(!radio.isSelect())
                {
                    radio.click();
                }
 Debug的时候,能走到第四行,radio.click(); 但是实际运行的时候,老是点不上。刚开始怀疑是等待时间不够长,在findElement之后加了等待时间,在click之后也加了等待时间,都不行。
最后选择多次点击这个radio。只要判断没有点击成功,就接着点。
修改代码为: 
                 WebElement radio = driver.finElement(By.id("id"));
                 while(!radio.isSelect()) {   
                    radio.click();
                    thread.sleep(1000);
                 }
这样做页面不停的闪烁,就是点击不到radio button。最后不小心碰了一下鼠标,鼠标跳到webdriver启动的页面。元素就被点到了。
问题的原因: 试了好多次,终于发现原来是因为radio button在页面的底端,测试页面非常长。改成下面的就可以了。
         WebElement radio = driver.finElement(By.id("id"));
          cradio.sendKeys(Keys.ARROW_DOWN);
          if(!radio.isSelected()) {
               radio.click();
               Thread.sleep(1000);
          }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值