Python处理session的方法整理


Posted in Python onAugust 29, 2019

前言:

不管是在做接口自动化还是在做UI自动化,测试人员遇到的第一个问题都是卡在登录上。

那是因为在执行登录的时候,服务端会有一种叫做session的会话机制。

一个很简单的例子:

在做功能测试的时候,肯定会遇到一种测试场景,需要在没登录的时候进行一些普通操作,会提示“请先登录”

比如:我们在逛TB的时候,如果没有登录,那么当你搜索到一个商品,准备下单时候,是不是就会弹出一个登录框?

其实这就是利用到了session会话机制。

因为HTTP协议是无状态的,那么在下订单,加入购物车等场景时,服务器是不知道哪个用户在操作。

因此,服务器需要为特定用户创建特定会话,该会话用于识别用户并跟踪用户,以便知道下一个什么商品的订单,购物车里有些什么商品。

requests.session

python有一个非常强大的接口测试第三方库 -- requests

很多学习Python的同学们可能都知道requests库的用法,但是不知道的是还有另外一种用法:requests.session

session其实是一个会话类,requests的所有请求方法,底层都是调用的这个类的对象。

其他方法和session的区别在于:

直接使用requests调用请求方法发送请求,每次都会创建一个新的session(会话对象),所有没有之前请求的cookies信息
直接创建一个session对象来发请求,那么每次发请求用的都是这个会话对象,所有能够保存之前的会话信息(cookies数据)

代码如下:session类

Python处理session的方法整理

requests库

Python处理session的方法整理

 

以上就是Python处理session最简单的方法的全部内容,感谢大家对三水点靠木的支持。

Python 相关文章推荐
python统计cpu利用率的方法
Jun 02 Python
python实用代码片段收集贴
Jun 03 Python
Python实现比较扑克牌大小程序代码示例
Dec 06 Python
python MySQLdb使用教程详解
Mar 20 Python
python3+selenium实现126邮箱登陆并发送邮件功能
Jan 23 Python
pip 安装库比较慢的解决方法(国内镜像)
Oct 06 Python
python 经典数字滤波实例
Dec 16 Python
Python 实现Serial 与STM32J进行串口通讯
Dec 18 Python
自定义Django Form中choicefield下拉菜单选取数据库内容实例
Mar 13 Python
Keras中 ImageDataGenerator函数的参数用法
Jul 03 Python
Python文件名匹配与文件复制的实现
Dec 11 Python
python opencv实现直线检测并测出倾斜角度(附源码+注释)
Dec 31 Python
django自带调试服务器的使用详解
Aug 29 #Python
Python中的相关分析correlation analysis的实现
Aug 29 #Python
python中单下划线(_)和双下划线(__)的特殊用法
Aug 29 #Python
python 计算两个列表的相关系数的实现
Aug 29 #Python
python同步windows和linux文件
Aug 29 #Python
python中几种自动微分库解析
Aug 29 #Python
详解python中index()、find()方法
Aug 29 #Python
You might like
xajax写的留言本
2006/11/25 PHP
php获取网页里所有图片并存入数组的方法
2015/04/06 PHP
PHP Callable强制指定回调类型的方法
2016/08/30 PHP
asp 取文本框名称代码
2008/12/02 Javascript
javascript判断用户浏览器插件安装情况的代码
2011/01/01 Javascript
jquery 选择器引擎sizzle浅析
2013/02/06 Javascript
JS 获取浏览器和屏幕宽高等信息的实现思路及代码
2013/07/31 Javascript
jQuery Trim去除字符串首尾空字符的实现方法说明
2014/02/11 Javascript
JavaScript中实现单体模式分享
2015/01/29 Javascript
浅谈js 闭包引起的内存泄露问题
2015/06/22 Javascript
js判断子窗体是否关闭的方法
2015/08/11 Javascript
JS数组操作(数组增加、删除、翻转、转字符串、取索引、截取(切片)slice、剪接splice、数组合并)
2016/05/20 Javascript
js 实现获取name 相同的页面元素并循环遍历的方法
2017/02/14 Javascript
AngularJS使用拦截器实现的loading功能完整实例
2017/05/17 Javascript
在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解
2017/09/19 NodeJs
nodejs更新package.json中的dependencies依赖到最新版本的方法
2018/10/10 NodeJs
提升node.js中使用redis的性能遇到的问题及解决方法
2018/10/30 Javascript
Angular父子组件通过服务传参的示例方法
2018/10/31 Javascript
JS判断数组里是否有重复元素的方法小结
2019/05/21 Javascript
图解javascript作用域链
2019/05/27 Javascript
使用JS监听键盘按下事件(keydown event)
2019/11/07 Javascript
python连接mysql并提交mysql事务示例
2014/03/05 Python
简单介绍Python中的RSS处理
2015/04/13 Python
Python语言实现获取主机名根据端口杀死进程
2016/03/31 Python
python中Pycharm 输出中文或打印中文乱码现象的解决办法
2017/06/16 Python
使用Python获取并处理IP的类型及格式方法
2018/11/01 Python
python 实现多线程下载m3u8格式视频并使用fmmpeg合并
2019/11/15 Python
CSS3关于z-index不生效问题的解决
2020/02/19 HTML / CSS
websocket+sockjs+stompjs详解及实例代码
2018/11/30 HTML / CSS
x-ua-compatible content=”IE=7, IE=9″意思理解
2013/07/22 HTML / CSS
优秀英语专业毕业生求职信
2013/11/23 职场文书
俞敏洪一分钟演讲稿
2014/08/26 职场文书
幼儿园园长新年寄语
2015/08/17 职场文书
JavaScript 语句之常用 for 循环详解
2021/03/29 Javascript
使用PDF.js渲染canvas实现预览pdf的效果示例
2021/04/17 Javascript
插件导致ECharts被全量引入的坑示例解析
2022/09/23 Javascript