很遗憾现在才开始给大家逐步分享自动化教程,原本计划着将现有的接口以及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自动化定位方法以及常用便捷操作的更多相关文章

  1. Selenium Web元素定位方法

    Selenium是用于Web应用测试的自动化测试框架,可以实现跨浏览器和跨平台的Web自动化测试.Selenium通过使用WebDriver API来控制web浏览器,每个浏览器都都有一个特定的Web ...

  2. 【python+selenium的web自动化】- 元素的常用操作详解(一)

    如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html ​ 本篇主要内容:1.元素 ...

  3. android和IOS自动化定位方法

    元素定位 方法:id定位,name定位(text定位),class_name定位, accessibility_id定位,xpath定位等 (目前1.5版本的已经不支持name定位了),所以APP的定 ...

  4. selenium自动化定位方法

    用selenium操作浏览器进行自动化操作其实就是通过元素属性执行相关操作.所以,我们要知道怎样去查找元素,定位元素. 常见的定位属性有: #查找元素的id find_elements_by_id(i ...

  5. 【python+selenium的web自动化】- 元素的常用操作详解(二)

    如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html ​ 本篇主要内容:1.鼠标 ...

  6. 【WEB自动化】【第一节】【Xpath和CSS元素定位】

    目前自动化测试开始投入WEB测试,使用RF及其selenium库,模拟对WEB页面进行操作,此过程中首先面对的问题就是对WEB页面元素的定位,几乎所有的关键字都需要传入特定的WEB页面元素,因此掌握常 ...

  7. webdriver对象定位方法

    webdriver提供了一系列的对象定位方法,常用的有以下几种 · id · name · class name · link text · partial link text · tag name ...

  8. Python3 Selenium自动化web测试 ==> 第二节 页面元素的定位方法 <上>

    前置步骤: 上一篇的Python单元测试框架unittest,我认为相当于功能测试测试用例设计中的用例模板,在自动化用例的设计过程中,可以封装一个模板,在新建用例的时候,把需要测试的步骤添加上去即可: ...

  9. Selenium3+python自动化007-Selenium常用定位方法

    自动化测试只要掌握四步操作:获取元素,操作元素,获取返回结果,断言(返回结果与期望结果是否一致),最后自动出测试报告.元素定位在这四个环节中是至关重要的,如果说按学习精力分配的话,元素定位占70%:操 ...

随机推荐

  1. pdm的说明

    软件行业的JAVA代码静态分析工具 PMD是一种开源分析Java代码错误的工具.与其他分析工具不同的是,PMD通过静态分析获知代码错误.也就是说,在不运行Java程序的情况下报告错误.PMD附带了许多 ...

  2. 在Nginx或Tengine服务器上安装证书

    阿里云SSL证书服务支持下载证书并安装到Nginx.Tengine服务器上,本文介绍了证书安装的具体操作. 前提条件 已准备远程登录工具,例如PuTTY或者Xshell. 背景信息 本文档以CentO ...

  3. Eureka Server 的 Instance Status 一直显示主机名问题

    Eureka Server 的 Instance Status 一直显示主机名问题 注册中心启动后,访问 http://localhost:8761/ 后: 如何调整为具体所在的服务器 IP 呢? 解 ...

  4. windows安装rabbitmq踩坑实录

    最近学习springcloud消息总线需要用到rabbitmq,然后安装的时候踩了一些坑,记录如下: 首先安装rabbitmq之前需要先安装erlang,因为rabbitmq服务端使用erlang写的 ...

  5. Hyperledger Fabric 部署在多个主机上

    前言 在实验Hyperledger Fabric无排序组织以Raft协议启动多个Orderer服务.TLS组织运行维护Orderer服务中,我们已经完成了使用提供 TLS-CA 服务的 council ...

  6. MySQL基础入门(1)

    MySQL基础入门(1) 为什么学习MySQL 关系数据库管理系统(Relational Database Management System, RDBMS)是一种极为重要的工具,其应用十分广泛,从商 ...

  7. .NET Core 中的 Logging 简单实用 - 记录日志消息显示到控制台

    .NET Core 支持适用于各种内置和第三方日志记录提供程序的日志记录 API. 本文介绍了如何将日志记录 API 与内置提供程序一起使用. 本文中所述的大多数代码示例都来自 .Net 5 应用. ...

  8. [AcWing 75] 和为S的两个数字

    点击查看代码 class Solution { public: vector<int> findNumbersWithSum(vector<int>& nums, in ...

  9. [操作系统]LINUX进程状态说明

    R(task_running) : 可执行状态 只有在该状态的进程才可能在CPU上运行.而同一时刻可能有多个进程 处于可执行状态,这些进程的task_struct结构(进程控制块)被放入对应CPU的 ...

  10. windodws pyusb hub端口对应连接的usb设备

    源码: 1 #!/usr/bin/python 2 import sys 3 import usb.core 4 # find USB devices 5 dev = usb.core.find(fi ...