17.Selenium【单/复选框】单选框(Radio)复选框(CheckBox)

一、前言

单选框叫radio 复选框叫checkbox 区别就是单选框的选项是互斥的,也就是说你只能选一个选项类似于单选题。同理复选框类似多选题想怎么选就怎么选。

一般情况下这两种都是input标签,我们可以通过点击或者发送空格的方式进行选中。

二、学习目标

1.单选框勾选

2.复选框勾选

3.判断是否勾选

三、知识点

示例网页源码:

<html>
<body>
Checkbox:
<input type="checkbox" value="cv1" name="c1">
<input type="checkbox" value="cv2">
<input type="checkbox" value="cv3" name="c1">
<input type="checkbox" value="cv4">
<p>
Radio:
<input type="radio" value="rv1" name="r1">
<input type="radio" value="rv2" name="r1">
</body>
</html>

1.【单选框勾选】

代码示例:

# checkbox
driver.find_element_by_xpath('//input[@value="cv1"]').click()  #选择第一个复选框
driver.find_element_by_xpath('//input[@value="cv2"]').send_keys(Keys.SPACE)  #选择第二个复选框

2.【复选框勾选】

代码示例:

# radio
driver.find_element_by_xpath('//input[@value="rv1"]').send_keys(Keys.SPACE)  #选择第一个单选框
time.sleep(1)
driver.find_element_by_xpath('//input[@value="rv2"]').click()  #选择第二个单选框

3.【判断是否勾选】

  • 语法:

    element.is_selected()
    
  • 参数:

  • 返回值:

    已选择:返回True

    未选择:返回False

  • 代码示例:

    # checkbox
    checkbox1 = driver.find_element_by_xpath('//input[@value="cv1"]')
    checkbox1.click()  #选择第一个复选框
    state1 = checkbox1.is_selected()             #判断元素是否被选择
    print(state1)
    
    # radio
    radio1 = driver.find_element_by_xpath('//input[@value="rv1"]')
    radio1.click()  #选择第一个单选框
    state2 = radio1.is_selected()                #判断元素是否被选择
    print(state2)
    
posted @ 2023-01-17 09:54  测开星辰  阅读(1410)  评论(0编辑  收藏  举报