zoukankan      html  css  js  c++  java
  • Selenium+java

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

    二、被测页面html源代码

    CheckBoxRadioDemo.html

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

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

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

    四、单选框处理

    具体实例代码如下:

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


    五、复选框处理

    具体实例代码如下:

      @Test
        public void testCheckbox() {
            driver.get("file:///C:/Users/Administrator/Desktop/CheckBoxRadioDemo.html");
            driver.manage().window().maximize();
            driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
            //获取第三个复选框公孙离元素对象
            WebElement element = driver.findElement(By.name("checkbox3"));
            boolean isSelected = element.isSelected();
            //如果选中取消选中
            if (isSelected){
                element.click();
            }
            /**
             * 全选操作
             */
            List<WebElement> elements = driver.findElements(By.cssSelector("[type='checkbox']"));
            for (WebElement webElement :elements) {
                //点击选中
                webElement.click();
            }
        }

    六、运行结果

  • 相关阅读:
    [HAOI2008]下落的圆盘
    10.2 上午 考试
    10.1 考试 ..........
    9.29 考试
    博弈论笔记
    bzoj_1022: [SHOI2008]小约翰的游戏John
    课程总结第十五周
    团队冲刺第二阶段09
    团队冲刺第二阶段08
    对搜狗输入法的评价
  • 原文地址:https://www.cnblogs.com/longronglang/p/11282385.html
Copyright © 2011-2022 走看看