【问题标题】:How to check Checkbox is already checked or not on edit page [duplicate]如何检查复选框已在编辑页面上选中或未选中[重复]
【发布时间】:2018-05-07 11:23:16
【问题描述】:

根据场景,如果复选框已经被选中,那么我只需要打印文本,如果复选框没有被选中,那么我需要点击复选框。

    //-Check sandbox test client checkbox is already checked or not if not then tick on checkbox
    boolean sandboxClientCheckbox = driver.findElement(By.xpath("//div[@class='eplChkBoxWrapper']//label[@id='acChkSandboxClientForLbl']")).isSelected();       
    System.out.println("Check checkbox value " +sandboxClientCheckbox);
    if(sandboxClientCheckbox == true)   {
        Utils.pauseTestExecution(3);
        System.out.println("Checkbox is already checked  ");            
    } else {
                driver.findElement(By.id("acChkSandboxClientForLbl")).click();
    }  

HTML标签是

<div class="eplChkBoxWrapper">==$0
 <input type="checkbox" id="acChkSandboxClient" class="eplChkBox">
<label id="acChkSandboxClientForLbl" for="acChkSandboxClient">
::after
</label>

谁能帮帮我?如何在执行时检查此复选框是否已选中?我共享了 DOM 元素。

【问题讨论】:

  • 使用处于 uncheckedchecked 状态的元素的 HTML 更新问题。
  • 选中
    ==$0 并且没有检查
    ==$0
  • @DebanjanB 对此有何更新?

标签: java selenium-webdriver


【解决方案1】:

isSelected() 不适用于LABEL 标签,仅适用于INPUTs。 INPUT 在您发布的 HTML 中。

boolean sandboxClientCheckbox = driver.findElement(By.id("acChkSandboxClient")).isSelected();

【讨论】:

  • 您好 JeffC isChecked() 未显示在建议列表中。和 driver.findElement(By.id("acChkSandboxClientForLbl")).isSelected() 这在选中复选框和未选中复选框时都返回 false
  • 对不起...在代码中发布了错误的 ID。立即尝试。
  • 嗨,JeffC,非常感谢,现在一切正常
  • 嗨,JeffC,我接受了你的回答,因为这对我有用。对于投票,当我试图给你投票时我没有积分,然后我收到消息,
  • 没关系...很高兴它有帮助。
猜你喜欢
相关资源
最近更新 更多
热门标签