selenium3+python自动化10-基本操作2(单选框、复选框、table定位)

一、前言

本次总结是对之前内容的扩充selenium3+python自动化6-基本操作总结(键盘、鼠标、select下拉框) ,包含单元框和复选框操作、table定位等内容。

二、单选框(radiobox)和复选框(checkbox)操作

1.认识单选框和复选框

html代码如下:

<html>
    <head>
    <title>单选和复选</title>
    </head>
    <body>  

    </form>
    <h4>单选:性别</h4>
    <form>
    <label value="radio">男</label>
    <input name="sex" value="male" id="boy" type="radio"><br>
    <label value="radio1">女</label>
    <input name="sex" value="female" id="girl" type="radio">
    </form>  

    <h4>微信公众号:从零开始学自动化测试</h4>
    <form>
    <!-- <label for="c1">checkbox1</label> -->
    <input id="c1" type="checkbox">selenium<br>
    <!-- <label for="c2">checkbox2</label> -->
    <input id="c2" type="checkbox">python<br>
    <!-- <label for="c3">checkbox3</label> -->
    <input id="c3" type="checkbox">appium<br>  

    <!-- <form>
    <input type="radio" name="sex" value="male" /> Male
    <br />
    <input type="radio" name="sex" value="female" /> Female
    </form> -->  

    </body>
    </html> 

2.单选框操作

选择哪个选项就直接定位对应的选项,进行点击操作。

3.复选框操作

①勾选单个框:选择哪个现象就直接定位对应的选项,进行操作

②全部勾选:找到选项中共同的属性,可以用xpath定位到一组元素,结合for循环一个一个去操作

4.判断是否选中(is_selected())

有时这个选项本身就是选中的,如果再点击一下,就反选了,所以在操作选项框之前先判断选项框有没有选中,如果没有再进行下面的操作。用is_selected()来判断是否是选中状态,返回结果为bool类型,没点击时候返回False,点击后返回True。

5.实际应用

以上面HTML为例进行单选框和复选框操作,代码如下:

from selenium import webdriver
from time import sleep
driver=webdriver.Chrome()
driver.maximize_window()
driver.get(‘file:///C:/Users/%E5%BC%A0%E5%85%A8/Desktop/box.html‘)
sleep(2)
#单选框操作
s=driver.find_element_by_id(‘boy‘).is_selected()
# print(s)#没选中状态下,看is_selected()返回值
if s==False:
    driver.find_element_by_id(‘boy‘).click()
sleep(2)
#复选框操作
#勾选单个
driver.find_element_by_id(‘c1‘).click()
sleep(2)
#全选
elements=driver.find_elements_by_xpath(‘//*[@type="checkbox"]‘)
for i in elements:
    if i.is_selected()==False:
        i.click()
sleep(2)
driver.quit()

三、table定位

1.认识table

源码如下:

<html>
        <head>
            <title>Table测试模板</title>  

        </head>
        <body>
            <table border="1" id="myTable">
                <tr>
                    <th>QQ群</th>
                    <th>QQ号</th>
                    <th>群主</th>
                </tr>
                <tr>
                    <td>selenium自动化</td>
                    <td>232607095</td>
                    <td>YOYO</td>
                </tr>
                <tr>
                    <td>appium自动化</td>
                    <td>512200893</td>
                    <td>YOYO</td>
                </tr>
            </table>
        </body>
</html> 

2.table特性

  • table页面查看源码一般有这几个明显的标签:table、tr、th、td
  • <table>表示一个表格
  • <tr>表示这个表格中间的一个行
  • </th> 定义表头单元格
  • </td> 定义单元格标签,一组<td>标签将将建立一个单元格,<td>标签必须放在<tr>标签内

3.实际应用

表格定位常用xpath或者css,以定位上面表格中的“appium自动化为例”,代码如下:

from selenium import webdriver
from time import sleep
driver=webdriver.Chrome()
driver.maximize_window()
driver.get(‘file:///C:/Users/%E5%BC%A0%E5%85%A8/Desktop/table.html‘)
sleep(2)
#通过xpath定位“appium自动化”
t1=driver.find_element_by_xpath(‘//*[@id="myTable"]/tbody/tr[3]/td[1]‘)
print(t1.text)
#通过css定位“appium自动化”
t2=driver.find_element_by_css_selector(‘#myTable > tbody > tr:nth-child(3) > td:nth-child(1)‘)
print(t2.text)
driver.quit()

参考博客:https://www.cnblogs.com/yoyoketang/p/6287962.html

原文地址:https://www.cnblogs.com/xiaobeibi/p/12343505.html

时间: 2024-10-10 08:30:33

selenium3+python自动化10-基本操作2(单选框、复选框、table定位)的相关文章

关于通过jq /js 实现验证单选框 复选框是否都有被选中

今天项目中遇到一个问题 就是要实现,单选框,复选框 同时都被选中才能进行下一步的问题,开始用js原生来写 怎么写都觉得不合适,通过for循环得出 复选框被选中的,在通过for循环得出单选框被选中的,问题来了 得出来的值 怎么做判断的 ,到现在也没弄明白. 最后果断 用jq来实现,刚开始也是怎么都不行  最后发现clss的值被我写错了 哎 剁手! 好了 下面上jq 实现 验证 单选框 复选框有没有同时被选中: <div class="tab-stpp" id="tab-s

ops-web运维平台-create.jsp-mootools下拉框-复选框

create.jsp页面的,body部分 <body onload="Page.init('${pageError}','${pageMessage}',${isSubmit},true)"> <div id="title">${pageTitle}</div> <s:form id="MYFORM" action="%{pageAction}" method="post&q

jquery单选框 复选框表格高亮 选中

单选框: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head&g

自学篇之-----纯css做的漂亮的单选框复选框样式

<!DOCTYPE html><html><head><title>checkbook</title><meta charset="utf-8" /><script type="text/javascript" src="jquery-1.10.2.min.js"></script> <style type="text/css"

jqurey实现单选框 ,复选框,下拉列表

1.复选框全选操作:其实说到底就是对Jquery 选择器的运用,点我查看Jquery选择器 html代码: 复制代码代码如下: <form> 您爱好的运动是: <input type="checkbox" name="item" value="football"/> football <input type="checkbox" name="item" value="

下拉框和单选框复选框的选中的值

1.下拉框的选中值 <select id="select"> <option value="1">1</option> <option value="2">2</option> </select> 第一种:$("select option:checked").val(); 第二种:$("#select").find("opti

selenium 单选框/复选框定位

1.单选框radio定位: 直接定位即可 driver.find_element_by_id("*****") 2.复选框checkbox定位: 直接定位即可 driver.find_element_by_id("*****") 3.复选框全部勾选定位: (1)可以一个一个勾选定位 (2)可以定位一组元素 复选框的type=checkbox,这里可以用xpath语法:.//*[@type='checkbox'] drvier.find_elements_by_xpa

Python+Selenium练习(十六)-复选框【Cherkbox】

练习场景:百度登录时,勾选下次自动登录按钮: 一.简单版 具体代码如下: # coding=utf-8 import time from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.implicitly_wait(8) driver.get('https://www.baidu.com/') driver.implicitly_wait(8) driver.find_e

猎豹MFC--对话框 复选框 单选按钮

使用单选按钮要注意:单选键按钮的顺序必须是连续的,如果不是连续的一定要调整一下 设置分组为true 初始化 默认值:打开源文件找到初始化对话框: 开始ID按钮到最后一个按钮 选中最后一个: 效果如下: 添加事件处理函数后在该函数内 填写失效函数: 失效后擦出背景: 选中矩形画矩形: 为绿色复选框添加变量代码: 调用上一个事件处理函数. 调用蓝色: 圆形设置也一样: 来自为知笔记(Wiz)

js操作复选框 复选框

//复选框点击事件 function checkAll(){ let tp=$("#tp").val(); let all=$("input[name='id']"); if(tp==1){for(let i=0;i<all.length;i++){ all[i].checked=true; } }else{for(let i=0;i<all.length;i++){ all[i].checked=false; } } } js操作复选框.改变选中效果