Web自动化定位方法以及常用便捷操作
很遗憾现在才开始给大家逐步分享自动化教程,原本计划着将现有的接口以及app、pc网页端进行自动化处理后再逐步给大家好好分享一下,由于当前实在没必要自动化操作了,所以临时用脑海中的知识再为大家继续更一篇吧,这个章节主要介绍web自动化的一些最基本的东西吧,那就是定位方法
1、所需工具:python + selenium
selenium库大家应该会比较熟悉的,因为现在网上有很多介绍,有专门学习过爬虫的朋友当然更比较熟悉,python前面有教大家如何安装的以及如何导入selenium库以及后面导入别的库都有介绍的,不太清楚的可以去前面查找一下
2、使用python打开浏览器操作(遇到报错前面章节有介绍如何给浏览器装插件)
from selenium import webdriver
from time import sleep
driver= webdriver.Chrome() #实例化谷歌浏览器,即打开浏览器
driver.get("https://www.baidu.com/") #使用百度浏览器打开网页
3、定位方式方法的介绍
#(1)可以通过元素 id 进行定位
# driver.find_element_by_id('wd').send_keys('爱学习') #方法一—定位百度——元素id来定位页面的输入框并输入爱学习
# driver.find_element_by_id('su').click() #点击百度一下
#(2)通过文本信息
# driver.find_element_by_link_text('贴吧').click() #方法二——点击百度页面上的贴吧
#(3)通过部分文本信息
# driver.find_element_by_partial_link_text('贴').click() #方法三——通过部分文本信息定位页面的相关信息——并点击
#(4)通过标签信息定位
#driver.find_element_by_class_name('贴吧').click() #方法四——通过标签信息定位页面的相关信息——并点击
#(5)通过name定位
# driver.find_element_by_name('wd').send_keys('爱学习') #方法五—定位百度——元素id来定位页面的输入框并输入爱学习
#(6)通过class定位
# driver.find_element_by_class_name('s_ipt').send_keys('爱学习') #方法六—定位百度——元素id来定位页面的输入框并输入爱学习
# driver.find_element_by_class_name('s_btn').click() #点击百度一下,注意class名属性不能有空格
#(7)通过xpath定位
# driver.find_element_by_xpath('//input[@name="wd"]').send_keys('爱学习') #通过相对路径查找元素位置
# driver.find_element_by_xpath('//*[@id="wd"]').send_keys('爱学习')
# driver.find_element_by_xpath(‘/html/body/div[1]/div[2]/div[5]/div/div/form/span[1]/input’).send_keys('爱学习') #通过绝对路径查找元素位置
#(8)通过css定位
#模糊查询;以什么开头
# driver.find_element_by_css_selector("input[name^='w']").send_keys('爱学习')
# driver.find_element_by_css_selector("input#su").click() #input标签中id属性以s开头的
#模糊查询;以什么结尾
# driver.find_element_by_css_selector("input[name$='q']").send_keys('爱学习') #input标签中name属性
# driver.find_element_by_css_selector("input#su").click() #input标签中id属性以s开头的
重点来喽,那么多定位方式在我们实际运用过程当中,运用xpath是非常多的,为了防止后期优化变化较大,我们往往运用的也就是通过相对路径(属性值)的方式去进行定位
Web自动化定位方法以及常用便捷操作的更多相关文章
- Selenium Web元素定位方法
Selenium是用于Web应用测试的自动化测试框架,可以实现跨浏览器和跨平台的Web自动化测试.Selenium通过使用WebDriver API来控制web浏览器,每个浏览器都都有一个特定的Web ...
- 【python+selenium的web自动化】- 元素的常用操作详解(一)
如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html 本篇主要内容:1.元素 ...
- android和IOS自动化定位方法
元素定位 方法:id定位,name定位(text定位),class_name定位, accessibility_id定位,xpath定位等 (目前1.5版本的已经不支持name定位了),所以APP的定 ...
- selenium自动化定位方法
用selenium操作浏览器进行自动化操作其实就是通过元素属性执行相关操作.所以,我们要知道怎样去查找元素,定位元素. 常见的定位属性有: #查找元素的id find_elements_by_id(i ...
- 【python+selenium的web自动化】- 元素的常用操作详解(二)
如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html 本篇主要内容:1.鼠标 ...
- 【WEB自动化】【第一节】【Xpath和CSS元素定位】
目前自动化测试开始投入WEB测试,使用RF及其selenium库,模拟对WEB页面进行操作,此过程中首先面对的问题就是对WEB页面元素的定位,几乎所有的关键字都需要传入特定的WEB页面元素,因此掌握常 ...
- webdriver对象定位方法
webdriver提供了一系列的对象定位方法,常用的有以下几种 · id · name · class name · link text · partial link text · tag name ...
- Python3 Selenium自动化web测试 ==> 第二节 页面元素的定位方法 <上>
前置步骤: 上一篇的Python单元测试框架unittest,我认为相当于功能测试测试用例设计中的用例模板,在自动化用例的设计过程中,可以封装一个模板,在新建用例的时候,把需要测试的步骤添加上去即可: ...
- Selenium3+python自动化007-Selenium常用定位方法
自动化测试只要掌握四步操作:获取元素,操作元素,获取返回结果,断言(返回结果与期望结果是否一致),最后自动出测试报告.元素定位在这四个环节中是至关重要的,如果说按学习精力分配的话,元素定位占70%:操 ...
随机推荐
- vue中Promise对象用法
Promise.all([ 需要异步一起执行的方法---------先做的事 ]).then(res=>{ 后做的事(先做的事已经做好了) }) 举栗子: Promise.all([ this. ...
- 一篇文章带你整明白HTTP缓存知识
最近看了很多关于缓存的文章, 每次看完,看似明白但是实际还是没明白,这次总算搞明白协商缓存是怎么回事了 首先,服务器缓存分强制缓存和协商缓存(也叫对比缓存) 强制缓存一般是服务端在请求头携带字段Exp ...
- 剖析虚幻渲染体系(14)- 延展篇:现代渲染引擎演变史Part 1(萌芽期)
目录 14.1 本篇概述 14.1.1 游戏引擎简介 14.1.2 游戏引擎模块 14.1.3 游戏引擎列表 14.1.3.1 Unreal Engine 14.1.3.2 Unity 14.1.3. ...
- hashlib加密模块、logging日志模块
hashlib模块 加密:将明文数据通过一系列算法变成密文数据 目的: 就是为了数据的安全 基本使用 基本使用 import hashlib # 1.先确定算法类型(md5普遍使用) md5 = ha ...
- 多线程的创建,并发,静态代理,Lambda表达式
程序是指令和数据的有序集合,本身没有任何运行的含义.是一个静态的概念. 在操作系统中运行的程序就是进程(Process),如:QQ,播放器,游戏等等. 进程是程序的一次执行过程,是一个动态的概念,是系 ...
- 最大数maxnumber - 题解【树状数组】
原题: 现在请求你维护一个数列,要求提供以下两种操作: 1. 查询操作.语法:Q L 功能:查询当前数列中末尾L个数中的最大的数,并输出这个数的值.限制:L不超过当前数列的长度. 2. 插入操作.语法 ...
- Percona停服俄罗斯
2022年3月9日,MySQL重要分支Percona宣布,他们将停止与俄罗斯和白俄罗斯的组织开展新业务,直至另行通知. Percona为支持员工而采取的一些行动如下: 已经在乌克兰目前安全的部分获得了 ...
- .NET Core 中的 Logging 简单实用 - 记录日志消息显示到控制台
.NET Core 支持适用于各种内置和第三方日志记录提供程序的日志记录 API. 本文介绍了如何将日志记录 API 与内置提供程序一起使用. 本文中所述的大多数代码示例都来自 .Net 5 应用. ...
- Django/MySql数据库基本操作&ORM操作
数据库配置: #第一步在settings里面 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME':'dbna ...
- python数据可视化-matplotlib入门(5)-饼图和堆叠图
饼图常用于统计学模块,画饼图用到的方法为:pie( ) 一.pie()函数用来绘制饼图 pie(x, explode=None, labels=None, colors=None, autopct=N ...