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%:操 ...
随机推荐
- iOS全埋点解决方案-控件点击事件
前言 我们主要介绍如何实现控件点击事件($AppClick)的全埋点.在介绍如何实现之前,我们需要先了解一下,在 UIKit 框架下,处理点击或拖动事件的 Target-Action 设计模式. ...
- PowerBI添加中国地图
可以直接在添加视觉对象中添加 或者用此方法 样子: 添加形状地图地图的"位置""图例" 然后去http://datav.aliyun.com/portal/sc ...
- Servlet 标准下载地址
Servlet 标准下载地址 java 技术标准开发社区 https://jcp.org/ 3.0 https://jcp.org/aboutJava/communityprocess/mrel/js ...
- 序列化器中钩子函数源码分析、many关键字源码分析
局部钩子和全局钩子源码分析(2星) # 入口是 ser.is_valid(),是BaseSerializer的方法 # 最核心的代码 self._validated_data = self.run_v ...
- LinkedList实现
LinkedList源码实现: public class LinkedList<E> { private class Node{ public E e; public Node next; ...
- docker容器编排原来这么丝滑~
前言: 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i 概念介绍: Docker Docker 这个东西所扮演的角色,容易理解,它是一个容器引擎,也就是说实际上我们的容器最终是由Docker ...
- mysql HikariCP连接池配置
#连接池配置 #最小空闲连接,默认值10,小于0或大于maximum-pool-size,都会重置为maximum-pool-size spring.datasource.hikari.minimum ...
- C++ 限定符Const和指针
指向常量的指针 指向常量的指针不能用于其所指对象的值.若想存放常量对象的地址,只能使用指向常量的指针. const int a = 3; //a是个常量,其值不能改变 int *b = &a; ...
- css 实现输入效果
<template> <h1>Pure CSS Typing animation.</h1> </template> <script> ...
- 2021.08.03 BZOJ 疯狂的馒头(并查集)
2021.08.03 BZOJ 疯狂的馒头(并查集) 疯狂的馒头 - 题目 - 黑暗爆炸OJ (darkbzoj.tk) 重点: 1.并查集的神奇运用 2.离线化 题意: 给一个长为n的序列,进行m次 ...