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 获取et和excel的版本号
Apr 09 Python
Python ORM框架SQLAlchemy学习笔记之数据查询实例
Jun 10 Python
Python脚本处理空格的方法
Aug 08 Python
JSON Web Tokens的实现原理
Apr 02 Python
Python统计单词出现的次数
Apr 04 Python
Python 查找字符在字符串中的位置实例
May 02 Python
使用Python对微信好友进行数据分析
Jun 27 Python
Django用户认证系统 User对象解析
Aug 02 Python
解析python的局部变量和全局变量
Aug 15 Python
pytorch点乘与叉乘示例讲解
Dec 27 Python
Python3 搭建Qt5 环境的方法示例
Jul 16 Python
Selenium 配置启动项参数的方法
Dec 04 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
PHP实现多图上传和单图上传功能
2018/05/17 PHP
php layui实现前端多图上传实例
2019/07/30 PHP
laravel-admin自动生成模块,及相关基础配置方法
2019/10/08 PHP
jQuery 插件 将this下的div轮番显示
2009/04/09 Javascript
使用indexOf等在JavaScript的数组中进行元素查找和替换
2013/09/18 Javascript
探讨JavaScript中声明全局变量三种方式的异同
2013/12/03 Javascript
javascript工厂方式定义对象
2014/12/26 Javascript
漂亮! js实现颜色渐变效果
2016/08/12 Javascript
js实现的光标位置工具函数示例
2016/10/03 Javascript
jQuery实现的省市联动菜单功能示例【测试可用】
2017/01/13 Javascript
jQuery.cookie.js实现记录最近浏览过的商品功能示例
2017/01/23 Javascript
JavaScript获取当前时间向前推三个月的方法示例
2017/02/04 Javascript
js分页之前端代码实现和请求处理
2017/08/04 Javascript
Layui组件Table绑定行点击事件和获取行数据的方法
2018/08/19 Javascript
JS实现动态倒计时功能(天数、时、分、秒)
2019/12/12 Javascript
关于AngularJS中几种Providers的区别总结
2020/05/17 Javascript
Vue实现圆环进度条的示例
2021/02/06 Vue.js
[04:53]DOTA2英雄基础教程 祈求者
2014/01/03 DOTA
python3生成随机数实例
2014/10/20 Python
Python isinstance函数介绍
2015/04/14 Python
python实现读取命令行参数的方法
2015/05/22 Python
python3抓取中文网页的方法
2015/07/28 Python
Python实现二叉搜索树
2016/02/03 Python
python中的二维列表实例详解
2018/06/19 Python
pycharm在调试python时执行其他语句的方法
2018/11/29 Python
python求绝对值的三种方法小结
2019/12/04 Python
解决TensorFlow GPU版出现OOM错误的问题
2020/02/03 Python
一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系
2020/07/03 Python
中东奢侈品市场:Coveti
2019/05/12 全球购物
声明struct x1 { . . . }; 和typedef struct { . . . }x2;有什么不同
2012/06/02 面试题
写一个函数返回1+2+3+…+n的值(假定结果不会超过长整型变量的范围)
2014/09/05 面试题
大学生的自我鉴定范文
2014/01/21 职场文书
终止劳动合同协议书
2014/04/14 职场文书
北京申奥口号
2014/06/19 职场文书
2015元旦联欢晚会结束语
2014/12/14 职场文书
鲁迅故里导游词
2015/02/05 职场文书