自动化测试学习-Day4-selenium的安装和8种定位方法
创始人
2025-05-28 05:13:36
0

哈喽,大家好!

本人21年毕业,软件工程专业,毕业后一直从事金融行业的软件测试。

希望大家一起见证一名卑微测试的成长之路。

目录

一、环境准备

1.浏览器下载

2.浏览器驱动下载

3.下载selenium

二、Selenium定位元素的8种方法(以百度首页为例)

1.id定位

2.name定位

3.class name定位

4.tag name定位

5.link text定位

6.partial link text定位

7.xpath定位

8.css selector定位


一、环境准备

1.浏览器下载

Selenium支持多平台(windows、linux、MAC)、多浏览器(ie、firefox、chrome)、多语言(Java、Python、C#),缺点是必须依赖第三方浏览器,所以首先需要下载浏览器,这里推荐Google,兼容性比较好。
Chrome浏览器下载地址:Google Chrome 网络浏览器

2.浏览器驱动下载

Selenium是通过后台驱动的方式来驱动浏览器,所以要下载浏览器驱动
2.1  查看浏览器版本:点击右上角三个点–>帮助–>关于Google Chrome
2.2  驱动下载地址:http://chromedriver.storage.googleapis.com/index.html,找到对应的版本点击下载,下载之后为压缩包,进行解压即可。
![在这里插入图片描述](https://img-blog.csdnimg.cn/8cb26acea2094b09aad29ade4ff12b72.png
在这里插入图片描述
 2.3  驱动配置

  • 将驱动解压放在python的安装目录下

在这里插入图片描述

  • 测试是否配置成功

在cmd输入chromedriver --version,如果显示浏览器驱动的版本信息则驱动配置成功
在这里插入图片描述

3.下载selenium

  • 在cmd输入pip install selenium
  • 测试是否安装成功,使用以下脚本

from selenium import webdriver
import time as tdriver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://www.baidu.com/")
t.sleep(3)
driver.quit()

二、Selenium定位元素的8种方法(以百度首页为例)

1.id定位

查看方法:①在浏览器直接按F12,选择Elements ②鼠标右键-->检查

属性是唯一的

find_element(By.ID, 'kw')

2.name定位

不是唯一的,如果存在多个相同属性,默认定位到第一个

find_element(By.NAME,'wd')

3.class name定位

不是唯一的,如果存在多个相同属性,默认定位到第一个

find_element(By.CLASS_NAME, 's_ipt')

4.tag name定位

标签不是唯一的,如果存在多个相同属性,默认定位到第一个(不建议使用)

find_element(By.TAG_NAME, 'input')

5.link text定位

文字完全匹配, 常用于a标签

find_element(By.LINK_TEXT,'新闻')

6.partial link text定位

文字部分匹配,适用于文字比较长的场景,方法同link text

find_element(By.PARTIAL_LINK_TEXT,'闻')

7.xpath定位

可以通过id,neme,class等元素定位

鼠标放在该行右键-->Copy-->Copy XPath,即可复制xpath

①xpath通过id定位://*[@id="kw"]

find_element(By.XPATH,'//*[@id="kw"]')

②xpath通过name定位://*[@name="wd"]

find_element(By.XPATH,'//*[@name="wd"]')

③xpath通过class定位://*[@class="s_ipt"]

find_element(By.XPATH,'//*[@class="s_ipt"]')

8.css selector定位

css是一种语言,定位方式比Xpath更快,功能比较强大,后面单独写一篇。

鼠标放在该行右键-->Copy-->Copy selector,即可复制selector

三种常规方式:

①若用id定位,则用 #:#kw

find_element(By.CSS_SELECTOR,'#kw')

②若用class定位,则用 . :.s_ipt

find_element(By.CSS_SELECTOR,'.s_ipt')

③用标签定位:input,若有多个相同属性,可用层级关系,用>表示

find_element(By.CSS_SELECTOR,'span>input')

 一边学习,一边总结,如有问题,欢迎大家指正!

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...