摘自:https://www.cnblogs.com/sanzangTst/p/7686602.html

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

二、单选框:radio

三、复选框:checkbox

四、判断是否勾选:is_selected()

1.有时候这个选项框,本身就是选中状态,如果我再点击一下,它就反选了,这可不是我期望的结果,那么可不可以当它是没选中的时候,我去点击下;当它已经是选中状态,我就不点击呢?那么问题来了:如何判断选项框是选中状态?
2.判断元素是否选中这一步才是本文的核心内容,点击选项框对于大家来说没什么难度。获取元素是否为选中状态,打印结果如下图。
3.返回结果为bool类型,没点击时候返回False,点击后返回True,接下来就很容易判断了,既可以作为操作前的判断,也可以作为测试结果的判断。

五、HTML Demo源码

 1 <html>
2 <head>
3 <meta http-equiv="content-type" content="text/html;charset=utf-8" />
4 <title>Checkbox</title>
5 </head>
6 <body>
7 <h3>复选框:CheckBox</h3>
8 <form>
9 <!-- <label for="c1">checkbox1</label> -->
10 <input type="checkbox" id="c1" />checkbox1<br>
11 <!-- <label for="c2">checkbox2</label> -->
12 <input type="checkbox" id="c2" />checkbox2<br>
13 <!-- <label for="c3">checkbox3</label> -->
14 <input type="checkbox" id="c3" />checkbox3<br>
15 </form>
16 <h3>单选:Radio</h3>
17 <form>
18 <label value="radio">男</label>
19 <input type="radio" name="sex" value="male" id="as"/><br>
20 <label value="radio1">女</label>
21 <input type="radio" name="sex" value="female" id="sd"/>
22 </form>
23 <!-- <form>
24 <input type="radio" name="sex" value="male" /> Male
25 <br />
26 <input type="radio" name="sex" value="female" /> Female
27 </form> -->
28 </body>
29 </html>

六、参考代码

 1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 # @File : checkboxx.py
4 # @Software: PyCharm
5 from selenium import webdriver
6 import time
7
8 url = 'file:///C:/Users/Administrator/Desktop/demo.html'
9 browser = webdriver.Chrome()
10 browser.get(url)
11
12 def radioo():
13 # 单选框定位、勾选
14 radios = browser.find_elements_by_id('as')
15 for radio in radios:
16 radio.click()
17 time.sleep(2)
18 time.sleep(2)
19
20 def checkboxx():
21 # 复选框定位、勾选
22 inputs = browser.find_elements_by_tag_name('input')
23 for input in inputs:
24 if input.get_attribute('type') == 'checkbox':
25 input.click()
26 time.sleep(2)
27 browser.find_elements_by_css_selector('input[type=checkbox]').pop().click()
28 time.sleep(2)
29
30 def is_select():
31 # 勾选前判断是否勾选
32 t = browser.find_element_by_id('c1').is_selected()
33 print(t)
34 browser.find_element_by_id('c1').click()
35 # 点击后判断是否勾选
36 r = browser.find_element_by_id('c1').is_selected()
37 print(r)
38 browser.quit()
39 if __name__ == '__main__':
40 radioo()
41 checkboxx()
42 is_select()

自动化测试基础篇--Selenium单选框(Radio)复选框(CheckBox)的更多相关文章

  1. 自动化测试-15.selenium单选框与复选框状态判断

    本篇主要介绍单选框和复选框的操作 一.认识单选框和复选框 1.先认清楚单选框和复选框长什么样 2.各位小伙伴看清楚哦,上面的单选框是圆的:下图复选框是方的,这个是业界的标准,要是开发小伙伴把图标弄错了 ...

  2. Selenium3自动化测试【28】单选框、复选框、下拉选择框

    Html页面中的单选按钮.复选框.下拉框均可通过WebDriver实现操做.本节结合案例一起来看看WebDriver如何操做这些控件. 同步视频知识与系列知识内容,可关注:[公众号]:柒哥测试:[WX ...

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

    一.什么是单选框.复选框? 二.被测页面html源代码 CheckBoxRadioDemo.html <!DOCTYPE html> <html lang="en" ...

  4. Python+Selenium自动化-定位一组元素,单选框、复选框的选中方法

    Python+Selenium自动化-定位一组元素,单选框.复选框的选中方法   之前学习了8种定位单个元素的方法,同时webdriver还提供了8种定位一组元素的方法.唯一区别就是在单词elemen ...

  5. Flutter 基础组件:单选框和复选框

    前言 Material组件库中提供了Material风格的单选开关Switch和复选框Checkbox,虽然它们都是继承自StatefulWidget,但它们本身不会保存当前选中状态,选中状态都是由父 ...

  6. 2.12 单选框和复选框(radiobox、checkbox)

    2.12 单选框和复选框(radiobox.checkbox) 本篇主要介绍单选框和复选框的操作一.认识单选框和复选框    1.先认清楚单选框和复选框长什么样 2.各位小伙伴看清楚哦,上面的单选框是 ...

  7. Selenium2学习(十五)-- 单选框和复选框(radiobox、checkbox)

    本篇主要介绍单选框和复选框的操作 一.认识单选框和复选框 1.先认清楚单选框和复选框长什么样 2.各位小伙伴看清楚哦,上面的单选框是圆的:下图复选框是方的,这个是业界的标准,要是开发小伙伴把图标弄错了 ...

  8. Selenium3+python自动化 单选框和复选框

    一.认识单选框和复选框 1.先认清楚单选框和复选框长什么样 2.各位小伙伴看清楚哦,上面的单选框是圆的:下图复选框是方的,这个是业界的标准,要是开发小伙伴把图标弄错了,可以先抽他了. 二.radio和 ...

  9. CSS学习笔记三:自定义单选框,复选框,开关

    一点一点学习CCS,这次学习了如何自定义单选框,复选框以及开关. 一.单选框 1.先写好body里面的样式,先写几个框 <body> <div class="radio-1 ...

随机推荐

  1. 【EF6学习笔记】(九)异步处理和存储过程

    本篇原文:Async and Stored Procedures 为何要采用异步? 一个Web服务器肯定有可用线程的限制,那么在一些访问量特别大的情况下,线程肯定会消耗完:这个时候服务器肯定处理不了请 ...

  2. 【原创】驱动加载之CreateService

    SC_HANDLE WINAPI CreateService( _In_ SC_HANDLE hSCManager, _In_ LPCTSTR lpServiceName, _In_opt_ LPCT ...

  3. zookeeper配置中心实战--solrcloud zookeeper配置中心原理及源码分析

    程序的发展,需要引入集中配置: 随着程序功能的日益复杂,程序的配置日益增多:各种功能的开关.参数的配置.服务器的地址…… 并且对配置的期望也越来越高,配置修改后实时生效,灰度发布,分环境.分集群管理配 ...

  4. 自定义了一个email模块,符合大多数人的使用习惯

    # coding: utf-8 import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text i ...

  5. 一张图,让你和面试官聊一个小时的“Java内存模型”

    如果面试官问你:你了解 Java 内存模型吗? 你就可以使用这张图,按照这张图中的顺序和面试官开聊,正常情况下,聊一个小时是差不多的,这个时候,对你的处境是非常有益的,因为面试官的时间不多了.

  6. 金三银四招聘季,这些BAT以及独角兽互联网公司官方招聘网站值得关注。(个人梳理备用:附BAT以及独角兽公司官方招聘网址)

    金三银四是一年当中的招聘最旺盛的时期,即招聘高峰期,在这个期间内有非常多名企巨头公司的放出大量的岗位信息.以博主几年的工作经验来看,在这期间找到称心如意的工作的几率大大提升,对于很多程序员来说,薪水高 ...

  7. .net反编译的九款神器(转载)

    .net反编译的九款神器  转载来源: https://www.cnblogs.com/zsuxiong/p/5117465.html 本人搜集了下8款非常不错的.Net反编译利器: 1.Reflec ...

  8. mysql 创建函数This function has none of DETERMINISTIC, NO SQL, or READS

    今天在mysql 5.6上创建函数的时候 发现报错: ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or R ...

  9. spring2.0:The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone. You must configure either th

    提示系统时区出现错误,可以在mysql中执行命令: set global time_zone='+8:00' 或者在数据库驱动的url后加上serverTimezone=UTC参数 jdbc:mysq ...

  10. 构建SpringBoot第一个Demo

    使用官方地址生成项目 https://start.spring.io  Generate:可以选择Maven或者Gradle构建项目 语言:我想一般都是Java 接下来选择SpringBoot的版本, ...