Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Selenium自动化测试秘籍:解锁常用函数实战指南

Selenium自动化测试秘籍:解锁常用函数实战指南

作者头像
用户11316056
发布于 2025-03-01 13:29:05
发布于 2025-03-01 13:29:05
20600
代码可运行
举报
运行总次数:0
代码可运行

1.元素的定位

获取页面单个元素,使用find_element

获取页面多个元素,使用find_elements

实战:获取百度首页中所有热搜的内容

发现当前元素存在6个,在页面中CTRL+F进行查询即可

代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.ie.service import Service
from webdriver_manager.chrome import ChromeDriverManager

#元素定位

#1.打开浏览器----驱动管理
ChromeIns = ChromeDriverManager().install()
#创建谷歌浏览器驱动对象
driver = webdriver.Chrome(service=Service(ChromeIns))

driver.get('https://www.baidu.com/?tn=68018901_16_pg')
ret = driver.find_elements(By.CSS_SELECTOR,'#hotsearch-content-wrapper > li')
for i in ret:
    print(i.text)

测试用例:

输出页面所有的热搜文字

测试结果:

正确!

查找元素的方式:

选择器、xpath、id、class_name

常用的主要就是cssSelector和xpath。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
driver.find_element(By.CSS_SELECTOR,'#kw')

例如这就是cssSelector的使用方法,那如何确定元素具体的位置呢?

只要赋值selector就可以啦

我们目前就学习手动赋值selector选择器,xpath同理。

2.操作测试对象

获取到了页面的元素之后,接下来就是要对元素进行操作了。常见的操作有点击、提交、输入、清楚、获取文本

2.1.点击/提交对象

click()函数用法 注意要用find_element函数 不然会报错!

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from time import sleep

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.ie.service import Service
from webdriver_manager.chrome import ChromeDriverManager

#元素定位

#1.打开浏览器----驱动管理
ChromeIns = ChromeDriverManager().install()
#创建谷歌浏览器驱动对象
driver = webdriver.Chrome(service=Service(ChromeIns))

driver.get('https://www.baidu.com/?tn=68018901_16_pg')
driver.find_element(By.CSS_SELECTOR,'#hotsearch-content-wrapper > li:nth-child(2) > a > span.title-content-title').click()
sleep(3)

2.2.模拟按键输入

代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
driver.find_element(By.CSS_SELECTOR,'#kw').send_keys('迪丽热巴')

2.3.清除文本内容

如果连续使用send_keys的话,是不会清空文本内容的 需要我们自己clear

代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
driver.get('https://www.baidu.com/?tn=68018901_16_pg')
driver.find_element(By.CSS_SELECTOR,'#kw').send_keys('迪丽热巴')
sleep(2)
driver.find_element(By.CSS_SELECTOR,'#kw').send_keys('我爱你')
sleep(10)

代码执行效果:

代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
driver.get('https://www.baidu.com/?tn=68018901_16_pg')
driver.find_element(By.CSS_SELECTOR,'#kw').send_keys('迪丽热巴')
sleep(2)
driver.find_element(By.CSS_SELECTOR,'#kw').clear()
driver.find_element(By.CSS_SELECTOR,'#kw').send_keys('我爱你')
sleep(10)

这下屏幕上只有我爱你的内容了

2.4.获取文本信息:

如何判断获取到的元素对应的文本是否符合预期呢?获取元素对应的文本并打印一下~

调用text

获取到元素对应的文本信息之后,通过断言来判断文本信息是否符合预期

发现匹配不上,就会断言错误。

特殊情况:元素属性值

元素属性值 != 文本信息

可以看出百度首页的 百度一下 这4个字就不是文本信息,而是属性!

当然我们也可以获取属性值:

get_attribute(属性)

获取当前页面标题和URL方法:

title current_url

3. 窗口

打开⼀个新的页面之后获取到的title和URL仍然还是前⼀个页面的 当我们手工测试的时候,我们可以通过眼睛来判断当前的窗⼝是什么,但对于程序来说它是不知道当前最新的窗⼝应该是哪⼀个。对于程序来说它怎么来识别每⼀个窗⼝呢?每个浏览器窗⼝都有⼀个唯⼀的属性句柄(handle)来表⽰,我们就可以通过句柄来切换

3.1.切换窗口:

如果不切换,默认还是在第一个窗口(通过url和title可以检测出来,进行验证)

没有切换的场景:

切换窗口的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
title = driver.title
url = driver.current_url

print('before:'+title)
print('before:'+url)

driver.find_element(By.CSS_SELECTOR,'#hotsearch-content-wrapper > li:nth-child(3) > a > span.title-content-title').click()
sleep(3)

#获取当前页面的句柄---第一个标签页
curHandle = driver.current_window_handle
#获取所有句柄
allHandle = driver.window_handles
#遍历所有的句柄,切换到新的页面
for handle in allHandle:
    if handle != curHandle:
        #切换句柄
        driver.switch_to.window(handle)

print('after:'+driver.title)
print('after:'+driver.current_url)
driver.quit()

效果展示:切换成功!

若页面发生跳转后未打开新的标签页,则不需要进行窗口的切换

3.2.窗口大小的设置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#窗⼝最⼤化
driver.maximize_window()
#窗⼝最⼩化
driver.minimize_window()
#窗⼝全屏
driver.fullscreen_window()
#⼿动设置窗⼝⼤⼩
driver.set_window_size(1024,768)

4.屏幕截图

我们的自动化脚本⼀般部署在机器上自动的去运行,如果出现了报错,我们是不知道的,可以通过抓拍来记录当时的错误场景,能更好的定位问题和解决问题

4.1.一般做法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
filename = "D:\\PythonProject\\image\\test.png"
driver.save_screenshot(filename)

注意这里需要我们提前将image文件创建好,然后图片存放的就在这个路径下

代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#1.打开浏览器----驱动管理
ChromeIns = ChromeDriverManager().install()
#创建谷歌浏览器驱动对象
driver = webdriver.Chrome(service=Service(ChromeIns))

driver.get('https://www.baidu.com/?tn=68018901_16_pg')
# driver.find_element(By.CSS_SELECTOR,'#kw').send_keys('迪丽热巴')
# sleep(2)
# driver.find_element(By.CSS_SELECTOR,'#kw').clear()
# driver.find_element(By.CSS_SELECTOR,'#kw').send_keys('我爱你')
# sleep(10)

title = driver.title
url = driver.current_url

print('before:'+title)
print('before:'+url)

#屏幕截图进阶做法:每次生成的图片文件名不一样
#百度首页
filename = "D:\\PythonProject\\image\\test.png"
driver.save_screenshot(filename)

这里我们来截图百度首页,效果:成功!

问题:

由于图片给定的名称是固定的,当我们多次运行自动化脚本时,历史的图片将被覆盖。

那如何将历史的图片文件都保存下来呢?让每次生成的图片文件名称都不一样!

4.2.进阶做法(文件名随时间变化)

代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
filename = 'autotest-'+datetime.datetime.now().strftime('%Y-%m-%d-%H%M%S')+'.png'
driver.save_screenshot('./images/'+filename)

代码解析:

  1. datetime.datetime.now().strftime('%Y-%m-%d-%H%M%S'):这部分代码使用了Pythondatetime模块来获取当前的日期和时间,并通过strftime方法将其格式化为字符串。格式'%Y-%m-%d-%H%M%S'表示年份-月份-日期-小时-分钟-秒,例如2023-04-01-123045
  2. 'autotest-'+...+'.png':这里将上一步得到的日期时间字符串与'autotest-'前缀和.png后缀组合起来,形成完整的文件名,例如autotest-2023-04-01-123045.png
  3. filename = ...:将上述组合好的文件名赋值给变量filename
  4. driver.save_screenshot('./images/'+filename):这行代码调用了WebDriver的save_screenshot方法来保存当前网页的截图。截图文件被保存在./images/目录下(./表示当前工作目录),文件名是前面通过变量filename确定的。如果images目录不存在,你可能需要先创建它,否则这段代码会抛出一个错误。

实战:

我们首先打开百度首页,然后截图,接着再打开第一条热搜再截一张图(注意这里要切换窗口!!!),我们的预期是在images路径下生成两个不同的图片,不会被覆盖,开始测试!

注意要切换窗口不然默认还是在百度首页上进行截图!

成功!!!

4.3.关闭窗口

driver.close()退出一个窗口

driver.quit ( ) 退出浏览器,当执行driver.quit()后,所有的标签页都会被关闭

注意点:

关闭窗口!=关闭浏览器,因此在执行driver。close()之后仍然还需要调用driver.quit()!

5.弹窗

弹窗是在页面是找不到任何元素的,这种情况怎么处理?使用selenium提供的Alert接口

处理一般步骤:

  1. 切换到弹窗
  2. 关闭弹窗(点击确定/取消)

5.1.警告弹窗+确认弹窗

  1. 页面上定位不到弹窗元素
  2. 出现了弹窗,页面其他元素也无法定位
  3. 即页面出现了弹窗,必须先处理弹窗之后才能定位到页面的元素!
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#点击调起弹窗
driver.find_element(By.CSS_SELECTOR,"tooltpip").click()
alert = driver.switchTo.alert
//确认
alert.accept()
//取消
alert.dismiss()

5.2.提示弹窗

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
alert = driver.switchTo.alert
alert.send_keys("hello")
alert.accept()
alert.dismiss()

注意转义字符:

报错信息:

InvalidSelectorException: Message: invalid selector: An invalid or illegal selector was specified

所以需要再加一个/

测试代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
driver.get('https://www.baidu.com/?tn=68018901_16_pg')
driver.find_element(By.CSS_SELECTOR,'#kw').send_keys('迪丽热巴')
driver.find_element(By.CSS_SELECTOR,'#su').click()
sleep(3)
driver.find_element(By.CSS_SELECTOR,'#\\31  > div > div > div > div > div > div.header-wrapper_3m6nI > div.cos-row.row-text_1L24W.row_4WY55 > div > div > div.cos-flex.cos-items-center').click()


driver.quit()

页面明明存在元素,但是代码执行报错:

但是代码中添加了sleep(3),就可以成功执行!

脚本的执行速度非常快,而页面要加载的资源比较多,因此当脚本执行到改行代码时页面还没有渲染完成,因此找不到该元素,当添加了time.sleep(3)之后,页面已经在3秒内加载完成,此时再去查找该元素就可以找到~

6.等待

通常代码执行的速度比页面渲染的速度要快,如果避免因为渲染过慢出现的自动化误报的问题呢?可以使用selenium中提供的三种等待方法:

6.1.强制等待sleep()

单位是秒

强制等待的原理:

当调用该方法时,程序会直接阻塞,等待指定秒数后继续执行后面的代码

优点:使用简单,调试的时候比较有效

缺点:影响运行效率,浪费大量的时间

1个或数量较少的测试脚本的时候,添加强制等待消耗的时间不过数秒

实际在工作中,业务场景比较复杂,要添加的自动化脚本非常多,通常来说自动化测试脚本数量可达到上百

假如200个脚本,每个脚本添加若于个等待时间,假设平均等待时间为6秒200 *6=1200s 大约20min,这个时间在程序运行时间里算是非常久的,而实际可接受的自动化运行时间为几秒或者几分钟之内

6.2.隐式等待:

#隐式等待5秒 driver.implicitly_wait(5)

隐式等待是⼀种智能等待,他可以规定在查找元素时,在指定时间内不断查找元素。如果找到则代码继续执行,直到超时没找到元素才会报错

代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#隐式等待
driver.implicitly_wait(3)

driver.get('https://www.baidu.com/?tn=68018901_16_pg')
driver.find_element(By.CSS_SELECTOR,'#kw').send_keys('迪丽热巴')
driver.find_element(By.CSS_SELECTOR,'#su').click()

隐式等待作用域是整个脚本的所有元素。即只要driver对象没有被释放掉( driver.quit() ),隐 式等待就⼀直生效。 优点:智能等待,作用于全局!

若等待指定秒数后还是查找不到元素,就会报错

6.3.显示等待

显示等待也是⼀种智能等待,在指定超时时间范围内只要满足操作的条件就会继续执行后续代码

WebDriverWait(driver,sec).until(functions) functions :涉及到selenium.support.ui.ExpectedConditions包下的 ExpectedConditions 类

ExpectedConditions下涉及到的方法(网址): selenium.webdriver.support.expected_conditions — Selenium 4.29.0.202501201850 documentation

测试检查元素的可见性

显示等待可以等待隐式等待无法处理的问题,但是仍然无法等待弹窗,因为弹窗不是页面的元素,无法通过页面元素来定位到弹窗

源码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.ie.service import Service
from selenium.webdriver.support import expected_conditions as EC #给一个别名
from selenium.webdriver.support.wait import WebDriverWait
from webdriver_manager.chrome import ChromeDriverManager

#元素定位

#1.打开浏览器----驱动管理
ChromeIns = ChromeDriverManager().install()
#创建谷歌浏览器驱动对象
driver = webdriver.Chrome(service=Service(ChromeIns))


driver.get('https://www.baidu.com/?tn=68018901_16_pg')
driver.find_element(By.CSS_SELECTOR,'#kw').send_keys('迪丽热巴')
driver.find_element(By.CSS_SELECTOR,'#su').click()
#强制等待
#sleep(3)
#time.sleep()
#driver.find_element(By.CSS_SELECTOR,'#\\31  > div > div > div > div > div > div.header-wrapper_3m6nI > div.cos-row.row-text_1L24W.row_4WY55 > div > div > div.cos-flex.cos-items-center').click()
#显示等待
wait = WebDriverWait(driver,3)
wait.until(EC.visibility_of_element_located((By.CSS_SELECTOR,'#\\31  > div > div > div > div > div > div.header-wrapper_3m6nI > div.cos-row.row-text_1L24W.row_4WY55 > div > div > div.cos-flex.cos-items-center')))


driver.quit()

显示等待代码成功创建,测试成功!

优点:显示等待是智能等待,可以自定义显示等待的条件,操作灵活

缺点:写法复杂

TIP:隐式等待和显示等待不建议一起使用

结果:重试多次,设置10秒的隐式等待和15秒的显示等待导致20秒后发生超时!

小提示: 不要混合隐式和显式等待,可能会导致不可预测的等待时间。 强制等待可以任意配合隐式等待或者显示等待来使用!

7.浏览器导航

7.1.打开网址

这里测试用的是百度的网站

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
driver.get("hhttps://www.baidu.com/?tn=68018901_16_pg") 

7.2.浏览器的前进、后退、刷新

driver.back() driver.forward() driver.refresh()

何为前进、后退、刷新?

8.文件上传

点击文件上传的场景下会弹窗系统窗口,进行文件的选择。selenium无法识别非web的控件,上传文件窗口为系统自带,无法识别窗口元素。但是可以使用sendkeys来上传指定路径的文件,达到的效果是⼀样的

代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
driver.get("file:///D:/file/%E6%AF%94%E7%89%B9%E6%95%99%E5%8A%A1/%E6%B5%8B%E8%A
F%95/selenium4html/selenium-html/upload.html")
ele = driver.find_element(By.CSS_SELECTOR,"body > div > div >
input[type=file]")
ele.send_keys("D:\\file\\test.txt")

注意文件路径分隔要用转移字符\\,不能只有一个\,这样就会造成错误!

通过send_keys()方法,可以实现将本地文件夹中的文件上传上来(注意要写完整的文件的路径+文件名)

9.浏览器参数设置

9.1.设置无头模式

无头模式的概念:

程序在后端运行,界面看不到页面的表现。

注意自动化打开浏览器默认是有头模式,因此需要我们手动进行无头模式的设置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
options = webdriver.ChromeOptions()
options.add_argument("-headless")
driver =
webdriver.Chrome(service=ChromeService(ChromeDriverManager().install()),options
=options)

9.2.页面加载策略

options.page_load_strategy = '加载方式'

页面加载主要有3种模式:

  1. normal:默认值,等待所有资源下载完毕
  2. eager:DOM访问已经准备就绪,但诸如图像的其他资源可能仍在加载
  3. none:完全不会阻塞webdriver(不建议!)

下面就是eager状态:

driver.get()默认情况下等待所有的资源加载完成之后才能继续往下执行,但是实际上主页面加载完成之后我们就可以继续执行自动化,若一直等待的话可能造成页面超时、元素找不到的问题

总结:

selenium自动化一般步骤:

  1. 初始化浏览器
  2. 打开一个网页
  3. 对该网页进行自动化测试操作
  4. 打印标题
  5. 关闭浏览器
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
	from selenium import webdriver

	from selenium.webdriver.chrome.service import Service as ChromeService

	from webdriver_manager.chrome import ChromeDriverManager

	 

	# 初始化 Chrome 浏览器

	driver = webdriver.Chrome(service=ChromeService(ChromeDriverManager().install()))

	 

	# 打开一个网页

	driver.get("https://www.google.com")

	 

	# 打印标题

	print(driver.title)

	 

	# 关闭浏览器

	driver.quit()
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-02-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
8.9 Selenium元素定位方式
元素的定位应该是自动化测试的核心,要想操作一个元素,首先应该识别这个元素象。webdriver提供了一系列的对象定位方法,常用的有以下几种:
清风穆云
2021/08/09
1.4K0
selenium自动化测试报告_selenium自动化测试断言
注意:driver.close() ,当前关闭的是主窗口,只有完成页面切换才可以关闭当前新的页面
全栈程序员站长
2022/11/15
2.6K0
selenium自动化测试报告_selenium自动化测试断言
Selenium4.0+Python3系列(四) - 常见元素操作(含鼠标键盘事件)
判断button是否显示,和is_displayed()容易混淆的是is_enabled()。
软件测试君
2022/12/05
1K0
Selenium4.0+Python3系列(四) - 常见元素操作(含鼠标键盘事件)
探索自动化测试工具:Selenium的威力与应用
Selenium可以在多种主流浏览器中运行,包括Chrome、Firefox、Edge等。这使得开发人员可以确保他们的Web应用程序在各种浏览器中都能正常运行。
小馒头学Python
2023/11/30
8570
探索自动化测试工具:Selenium的威力与应用
【Python爬虫实战】Selenium自动化网页操作入门指南
在现代网络开发和数据爬取中,Selenium 已成为不可或缺的自动化工具之一。无论是用于测试、数据抓取,还是模拟用户行为,Selenium 都可以在不干预的情况下自动化浏览器操作,为开发者节省大量时间和精力。本指南将带您从 Selenium 的安装配置到高级操作,逐步掌握网页自动化的核心技巧。
易辰君
2024/11/07
1.3K0
彻底学会Selenium元素定位
最近收到不少初学UI自动化测试的小伙伴私信,对于元素的定位还是有些头疼,总是定位不到元素,以及不知道用哪种定位方式更好。
测试蔡坨坨
2022/12/21
7.8K0
彻底学会Selenium元素定位
大模型开发实战:(一)使用 Selenium 进行网页爬虫
Selenium 由 Jason Huggins 于 2004 年发起,最初名为 JavaScript Testing Framework,后因受到希腊神话中“月亮女神 Selene”的启发而更名为 Selenium。它最初是为了解决网页自动化测试需求而诞生的开源工具,但因其能模拟真实浏览器操作(如点击、输入、滚动等),也被广泛用于网页数据爬取。爬虫工具有很多,例如 BeautifulSoup4,为什么选择自动化测试工具 Selenium 进行爬虫?目前绝大部分 Web 应用都使用 JavaScrip 动态加载数据,而 BeautifulSoup4 只能解析初始页面的 HTML 源码,对于动态加载的数据无法获取,因此使用 Selenium 模拟用户,完成数据加载的操作。
张高兴
2025/05/21
5520
大模型开发实战:(一)使用 Selenium 进行网页爬虫
Python爬虫(二十一)_Selenium与PhantomJS
本章将介绍使用Selenium和PhantomJS两种工具用来加载动态数据,更多内容请参考:Python学习指南 Selenium Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动化操作,不同是Selenium可以直接运行在浏览器上,它支持所有主流的浏览器(包括PhantomJS这些无界面的浏览器)。 Selenium可以根据我们的指令,让浏览器自动加载页面,获取需要的页面,甚至页面截屏,或
用户1174963
2018/01/17
2.8K0
Python爬虫(二十一)_Selenium与PhantomJS
全网最全关于selenium webdriver 8大元素定位详解
元素的定位应该是自动化测试的核心,想要操作一个元素,首先应该识别这个元素。Webdriver提供了一系列的元素定位方法。
全栈程序员站长
2022/06/29
1.9K0
全网最全关于selenium webdriver 8大元素定位详解
自动化测试——selenium(环境部署和元素定位篇)
一、什么是selenium? > 一个web自动化测试工具; 二、主流的自动化工具: > QTP:收费 支持(支持web、桌面软件自动化) > selenium:免费,开源 只支持web项目 > Robot frameword: 基于Python扩展关 键字驱动自动化工具 注意:要是用selenium自动化工具,要先下载安装selenium 一、web自动化环境部署 1.1 selenium安装 1、安装 在cmd 直接输入 :pip install selenium 2、卸载: 在cmd输入:pip uninstall selenium 3、查看: pip show selenium 或者 pip list pip 是python中包管理工具(可安装,可卸载,查看python工具),使用pip的时候必须联网 有的输入 pip install selenium 会提示出现 ‘pip’ 不是内部或外部命令,也 不是可运行的程序或批处理文件。产生这个原因python环境内部没有 pip 路径,则需要我们收到导入 解决方法: 1、找到我们python工具中的pip所在文件夹,复制其路径
伤心的辣条
2022/09/08
2.2K0
自动化测试——selenium(环境部署和元素定位篇)
Selenium工具学习
他是基于XML(标记语言)、Path的简称, 他是一种在xml文档中查找元素信息的语言。
用户11097514
2024/05/30
1720
Selenium工具学习
【Python爬虫实战】深入解析 Selenium:从元素定位到节点交互的完整自动化指南
Selenium 是进行网页自动化操作的强大工具,在测试、数据抓取、用户行为模拟等领域广泛应用。本指南将带您详细了解如何在 Selenium 中查找和定位页面元素,并深入介绍各种节点交互方法,包括点击、输入文本、选择选项等操作。无论您是初学者还是经验丰富的开发者,本篇文章将帮助您掌握 Selenium 自动化的核心技能,实现更高效的网页自动化操作。
易辰君
2024/11/07
8760
Selenium 4 有哪些不一样?
众所周知,Selenium在2021年10月13号发布了Selenium4,目前最新的版本应该是Selenium 4.4.0。
测试蔡坨坨
2022/08/28
2K0
Selenium 4 有哪些不一样?
Selenium3元素定位详解与封装
在学习自动化测试之前,首先需要思考清楚的是为什么需要学习自动化测试,以及今天业界谈的研发效能对测试而言意味着什么?其实这就需要在测试以及整体研发的角度来思考问题,在今天这样的市场环境中,打造高质量的持续交付产品质量,基本是所有互联网研发团队的测试团队都追求的一个方向。在敏捷流行的今天,以及新的技术在企业全面的落地,在测试而言,就需要通过测试技术的手段以及质量管理的思维能力,来提升测试效率,和交付满足市场期待的产品质量。自动化测试是所有测试形式里面在目前而言,是最基础的也是最核心的,因为自动化测试连接了功能测试以及高阶的测试开发的测试技术栈的知识体系。即使初级的测试同学,也得具备自动化测试的思维能力和技术能力。
无涯WuYa
2021/10/13
9800
Selenium3元素定位详解与封装
自动化测试工具Selenium的基本使用方法
由于requests模块是一个不完全模拟浏览器行为的模块,只能爬取到网页的HTML文档信息,无法解析和执行CSS、JavaScript代码,因此需要我们做人为判断;
江一铭
2022/06/17
2.7K0
《手把手教你》系列练习篇之7-python+ selenium自动化测试 -压轴篇(详细教程)
  “压轴”原本是戏曲名词,指一场折子戏演出的倒数第二个剧目。在现代社会中有很多应用,比如“压轴戏”,但压轴也是人们知识的一个盲区。“压轴”本意是指倒数第二个节目,而不是人们常说的倒数第一个,倒数第一个节目称“压台”。想看“压台篇”,敬请关注宏哥
北京-宏哥
2019/12/10
1.4K0
《手把手教你》系列练习篇之7-python+ selenium自动化测试 -压轴篇(详细教程)
自动化-Selenium 3-常用API(Python版)
ActionChains类提供的鼠标事件常用方法(perform()执行所有ActionChains中存储的行为):
wangmcn
2022/07/22
1.4K0
自动化-Selenium 3-常用API(Python版)
ChatGPT与基于GUI的自动化测试
当使用Edge浏览器结合Selenium框架生成百度查询测试代码时,你可以使用以下Python代码示例:
顾翔
2024/09/10
2260
ChatGPT与基于GUI的自动化测试
selenium最大化浏览器-Web UI自动化测试之Selenium工具篇
  注意:3.0 版本下所有浏览器除了需要安装 框架 以外,还需要安装对应的驱动程序
宜轩
2022/12/26
2K0
爬虫最终杀手锏 — PhantomJS 详解(附案例)
Selenium: 可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否发生。Selenium 自己不带浏览器,不支持浏览器的功能,它需要与第三方浏览器结合在一起才能使用。但是我们有时候需要让它内嵌在代码中运行,所以我们可以用一个叫 Phantomjs 的工具代替真实的浏览器。
全栈程序员站长
2022/09/06
2.4K0
推荐阅读
相关推荐
8.9 Selenium元素定位方式
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验