python+selenium自动化测试通过cookie绕过登录验证

文章介绍了如何通过获取并设置cookie来绕过登录过程,实现对系统的自动化测试。首先,理解cookies和session的区别,然后详细描述了使用Python的selenium库,如何获取并添加cookie,最后通过刷新页面和操作元素来验证是否成功绕过了登录验证。
摘要由CSDN通过智能技术生成

前言:之前记录过通过截图获取验证码的方式实现登录,但目前存在识别不准确的情况,因此有本篇通过cookie绕过登录验证的方法,绕过登录后,可以便于对系统的功能界面进行自动化测试设计

一、关于cookie的一些认知

1、浏览器的缓存有两种机制,cookies和session;

相同点:cookies和session都是有服务器生成,

不同点:cookie将保留在浏览器本地,session记录在服务器端

2、cookie的几大属性

name:名字(键),cookies的必须字段
values:值
domain:域,cookie的作用域名
path:表示路径,/表示当前域名下所有的网页都能使用该cookie
domain和path结合在一起使用限定了cookie的使用范围
expires:生命周期,限定cookie的使用时间。如果生命周期中有session的说明cookie只在当前回话中有效,关闭浏览器后立即失效
sessionID:本次访问回话留下的ID
3.浏览器获取cookie信息

 

 

二、具体的方式

--碎碎念

操作的步骤

1.登录一次目标网站,获取cookie信息

2.编写程序:导入selenium,通过driver获取目标界面,将cookie数据加入到driver中,刷新界面。

3.尝试捕获登录后界面数据,检验是否绕过登录验证

--代码展示

# 导入selenium,BY
from selenium import webdriver
from selenium.webdriver.common.by import By  
# 1访问界面
url = '手动打码'
driver = webdriver.Chrome()
driver.get(url)
time.sleep(2)
#2.添加Cooke信息,从F12中获取
cookies = [{"name":"手动打码",   "value":"手动打码"}]
time.sleep(2)
#3.加入cookie信息
for cookie in cookies:
    driver.add_cookie(cookie)
#4.刷新进入登录后的界面
driver.refresh()
time.sleep(5)
#5.获取界面元素测试是否通过
driver.find_element(By.CLASS_NAME,"el-submenu__title").click()
time.sleep(2)
#6.退出
driver.quit()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值