Selenium+java - 单选框及复选框处理

前端之家收集整理的这篇文章主要介绍了Selenium+java - 单选框及复选框处理前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

一、什么是单选框、复选框?

二、被测页面html源代码

CheckBoxRadioDemo.html

<!DOCTYPE html@H_403_19@>
@H_403_19@<html lang@H_403_19@="en"@H_403_19@head@H_403_19@>
    @H_403_19@Meta charset@H_403_19@="UTF-8"@H_403_19@title@H_403_19@>CheckBox、Radio练习案例@H_403_19@</body@H_403_19@div@H_403_19@h3@H_403_19@>复选框 checkBox@H_403_19@>@H_403_19@
    请选择喜欢的打野英雄:@H_403_19@br@H_403_19@label@H_403_19@><input name@H_403_19@="checkBox1" type@H_403_19@="checkBox" value@H_403_19@="李白"@H_403_19@/>李白 @H_403_19@="checkBox2"="韩信"@H_403_19@/>韩信 @H_403_19@="checkBox3"="公孙离" checked@H_403_19@="checked"@H_403_19@/>公孙离 @H_403_19@="checkBox4"="露娜"@H_403_19@/>露娜 @H_403_19@>单选框 radio@H_403_19@
    选择喜欢的打野英雄:@H_403_19@="radio"="0"="1"@H_403_19@="2"@H_403_19@="3"@H_403_19@/>孙尚香 @H_403_19@html@H_403_19@>

三、判断是否选中:isSelected()

有时单选框、复选框会有默认选中的情况,那么有必要我在操作单选框或者复选框的时候,先判断选项框是否为选中状态。使用element.isSelected()来获取元素是否为选中状态,返回结果为布尔类型,如果为选中状态返回true,如果未选中返回为false。至于操作就不必多说了,对大家来讲是so easy,就点击就可以了。

四、单选框处理

具体实例代码如下:

@H_403_19@ @Test
    @H_403_19@public @H_403_19@void@H_403_19@ testRadio() {
        driver.get("file:///C:/Users/Administrator/Desktop/CheckBoxRadioDemo.html"@H_403_19@);
        driver.manage().window().maximize();
        driver.manage().timeouts().implicitlyWait(30@H_403_19@,TimeUnit.SECONDS);
        //@H_403_19@获取第1个单选框李白元素对象
        WebElement element = driver.findElement(By.cssSelector("[value='0']"@H_403_19@));
        @H_403_19@boolean isSelected =@H_403_19@ element.isSelected();
        @H_403_19@查看李白是否被选中
        @H_403_19@if@H_403_19@ (isSelected){
            System.out.println("李白已被选中,你只能选下一个英雄了"@H_403_19@);
        }
        @H_403_19@获取第3个单选框露娜元素对象
        element = driver.findElement(By.cssSelector("[value='2']"@H_403_19@判断是否被选中
        @H_403_19@if(!@H_403_19@element.isSelected()){
            @H_403_19@如果未被选中,就可以直接选了
@H_403_19@            element.click();
        }
    }


五、复选框处理

具体实例代码如下:

@H_403_19@  @Test
    @H_403_19@ testCheckBox() {
        driver.get("file:///C:/Users/Administrator/Desktop/CheckBoxRadioDemo.html"@H_403_19@获取第三个复选框公孙离元素对象
        WebElement element = driver.findElement(By.name("checkBox3"@H_403_19@如果选中取消选中
        @H_403_19@ (isSelected){
            element.click();
        }
        @H_403_19@/**@H_403_19@
         * 全选操作
         @H_403_19@*/@H_403_19@
        List<WebElement> elements = driver.findElements(By.cssSelector("[type='checkBox']"@H_403_19@for@H_403_19@ (WebElement webElement :elements) {
            @H_403_19@点击选中
@H_403_19@            webElement.click();
        }
    }

六、运行结果

 

猜你在找的Selenium相关文章