selenium3+python3自动化测试学习之网页元素定位
selenium基础实战之定位网页元素技巧
selenium定位网页元素
find_element_by_id,find_element_by_name,find_element_by_class_name
1)、开启浏览器
browser = webdriver.Firefox();
2)、打开网页
browser.get("http://baidu.com")
使用python判断是否正确
browser.title 或者 browser.current_url
3)、定位元素的8种方法,(!!!!一定要唯一)
id: find_element_by_id() 采用id属性进行定位
name: find_element_by_name() 定位方式和id定位相似,id、name和class一般在网页都至少会有其中的一种
class name: find_element_by_class_name() 定位方式和id定位相似,id、name和class一般在网页都至少会有其中的一种
4)、定位到元素后的方法
clear() //清空
send_keys() // 输入
back() //后退页面
maximize_window() // 最大化窗口
click() //点击事件,点击按钮,超链接
submit() //提交表单
5)、定位到元素后的属性
tag_name //标签名
text //文本内容
selenium基础实战之定位网页元素技巧下集,
1)、tag name:find_element_by_tag_name() 通过标签名去定位,用的少,如find_element_by_tag_name("div")
2)、link text: find_element_by_link_text() 超链接内容定位,元素内容
如 <a href="#">xxx </a>,则find_element_by_link_text("xxx")
from time import sleep
sleep(5)
3)、partial link text:find_element_by_partial_link_text() 超链接内容定位,模糊匹配,和上面类似
selenium网页元素之CSS定位
使用css定位网页元素
1)、css selector:find_element_by_css_selector()
根据CSS属性定位,一般class是用.标记,id是用#标记,定位方式也会比xpath快
如 find_element_by_css_selector('input[id=\'search\']') // 规则: 元素[属性=值]
技巧:通过firebug的拷贝css路径
路径:审查元素-》右键-》复制-》css选择器
selenium网页元素之xpath定位
使用xpath定位网页元素
1)、xpath语法:http://www.w3school.com.cn/xpath/xpath_syntax.asp
注意 : ”//“ 是全部的意思,即全文扫描, ”/“ 的相邻的意思, *是所有元素, ”..“是元素的父节点, "."是当前节点
2)、xpath :find_element_by_xpath()xpath是XML路径语言,通过元素的路径来完成对元素的查找,HTML就是XML的一种实现方式,在FriePath插件里copy对应的xpath地址
绝对路径定位:从<html>标签开始依次往下进行查找
相对路径:利用元素属性来进行xpath定位
技巧:通过firebug的拷贝css路径
8种选择器注意问题:如果定位元素报错,原因如下
1)、根据定位取不到
2)、多个元素根据下标超出范围,没有0,从1开始
解决办法:换其他方式定位元素
selenium3+python3自动化测试学习之网页元素定位的更多相关文章
- Selenium3 + Python3自动化测试系列二——selenium元素定位
一.selenium元素定位 Selenium对网页的控制是基于各种前端元素的,在使用过程中,对于元素的定位是基础,只有准去抓取到对应元素 才能进行后续的自动化控制,我在这里将对selenium8种元 ...
- selenium3+python3自动化测试学习之模拟事件处理
自动化测试实战之ActionChains模拟用户行为 需要模拟鼠标操作才能进行的情况,比如单击.双击.点击鼠标右键.拖拽 解决:selenium提供了一个类来处理这类事件 selenium.webdr ...
- 网页元素定位Position
第九章: 网页元素定位Position position属性 static:默认值,没有定位 relative:相对定位 absolute:绝对定位 fixed:固定定位 (一般不用) stati ...
- Selenium3自动化测试【14】元素定位之ID
元素定位 Selenium需要告知其如何去定位元素,来模拟用户动作.例如要操作Bing搜索页. 首先要找到搜索框与搜索按钮: 通过键盘输入检索的关键字: 用鼠标单击搜索按钮: 提交搜索请求. Sele ...
- 自动化测试基础篇--Selenium元素定位
摘自https://www.cnblogs.com/sanzangTst/p/7457111.html 一.Selenium元素定位的重要性: Web自动化测试的操作:获取UI页面的元素,对元素进行操 ...
- 软件WEB自动化测试工具之智能元素定位
江湖一直有着这么一句名言“天下武功,唯快不破".那么在软件测试领域,自然而然我们会想到软件自动化测试.软件自动化测试的实现自然离不开软件自动化测试工具.软件自动化测试工具是软件自动化的载体, ...
- python学习之——selenium元素定位
web自动化测试按步骤拆分,可以分为四步操作:定位元素,操作元素,获取返回结果,断言(返回结果与期望结果是否一致),最后自动出测试报告. 其中定位元素尤为关键,此篇是使用webdriver通过页面各个 ...
- Appium学习笔记4_元素定位方法
Appium之元素定位,如果对Android上如何使用工具获取页面元素有问题的,请转战到这:http://www.cnblogs.com/taoSir/p/4816382.html. 下面主要是针对自 ...
- Selenium3 + Python3自动化测试系列六——等待方式
等待 一.等待是什么,为什么要等待 在做自动化测试,设计测试用例的时候,有时下一步的操作会依赖上一步的结果或者内容,上一步操作成功之后才能进行下一步操作等, 这时候,我们就需要使用等待,来判断上一步操 ...
随机推荐
- scrapy技术进阶-URL路径依赖
方法1: #!/usr/bin/python # -*- coding: gbk -*- import time from scrapy.spider import BaseSpider from s ...
- vb.net版本房收费系统改造
房费制开始重建的最终版本. 前几天.刚刚看完三层的视频,在视频中具体的解说了一个登录功能.天真的我,当时以为三层结构是那么的简单,所以我草草地做完总结之后,就非常快就開始机房收费系统的重构了.但是谁想 ...
- MVC 调试路由
1.添加引用RouteDebug.dll 2 修改Global.asax,切记调试过后要删掉 using System;using System.Collections.Generic;using S ...
- 检查Android是否支持指纹识别以及是否已经录入指纹
原文:检查Android是否支持指纹识别以及是否已经录入指纹 Android M 开始,系统中加入了指纹相关功能. 主要用到的类为:FingerprintManager 只提供三个方法: 返回值 方法 ...
- mysql主从配置及其读写分离
mysql主从配置意思就是一个主mysql服务器,一个从mysql服务器,一共要用到两台服务器.主服务器新增一个账号专门让从服务器来访问同步工作,主从配置完成后,主服务器主要就是新增和update操作 ...
- 在WPF中减少逻辑与UI元素的耦合
原文:在WPF中减少逻辑与UI元素的耦合 在WPF中减少逻辑与UI元素的耦合 周银辉 1, 避免在逻辑中引用界面元素,别把后台数据强加给UI 一个糟糕的案例 比如说主界 ...
- SqlServer Bug:复制架构更改参数(replicate_ddl)无效
原文:SqlServer Bug:复制架构更改参数(replicate_ddl)无效 最近测试可更新订阅的架构更改问题,发现了一个 bug. 在复制中,当在发布数据库对发布数据库进行架构更改时,结构自 ...
- WPF Textblock Run 空白问题
消除Run之前的空白是将Run标签布局时头尾相连 如: <TextBlock > <Run Text="A"></Run> <Run Te ...
- ColorCode是一个在线随机取色工具,可以随机获取十六进制、RGB、HSl等颜色。
ColorCode是一个在线随机取色工具,可以随机获取十六进制.RGB.HSl等颜色. ColorCode 彩蛋爆料直击现场 ColorCode是一个在线随机取色工具,可以随机获取十六进制.RGB.H ...
- TApplicationEvents的前世今生(待续)
这是它的声明,它的数据成员全部都是Event,而没有真正意义上的数据(如此一来,几乎可以猜测,它本身什么都做不了): TCustomApplicationEvents = class(TCompone ...