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 相关文章推荐
RC4文件加密的python实现方法
Jun 30 Python
在Python中使用Neo4j的方法
Mar 14 Python
python2和python3在处理字符串上的区别详解
May 29 Python
python爬虫 urllib模块反爬虫机制UA详解
Aug 20 Python
python 数据提取及拆分的实现代码
Aug 26 Python
Python3 解决读取中文文件txt编码的问题
Dec 20 Python
Opencv图像处理:如何判断图片里某个颜色值占的比例
Jun 03 Python
tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解
Jun 03 Python
查看keras各种网络结构各层的名字方式
Jun 11 Python
keras 简单 lstm实例(基于one-hot编码)
Jul 02 Python
如何判断pytorch是否支持GPU加速
Jun 01 Python
Python虚拟环境virtualenv是如何使用的
Jun 20 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和ACCESS写聊天室(四)
2006/10/09 PHP
PHP使用HTML5 FormData对象提交表单操作示例
2019/07/02 PHP
JavaScript 自动完成脚本整理(33个)
2009/10/20 Javascript
基于JQuery的Pager分页器实现代码
2010/07/17 Javascript
收集json解析的四种方法分享
2014/01/17 Javascript
kindeditor修复会替换script内容的问题
2015/04/03 Javascript
jQuery仅用3行代码实现的显示与隐藏功能完整实例
2015/10/08 Javascript
angular ng-repeat数组中的数组实例
2017/02/18 Javascript
详解如何使用Node.js编写命令工具——以vue-cli为例
2017/06/29 Javascript
JavaScript程序设计高级算法之动态规划实例分析
2017/11/24 Javascript
React数据传递之组件内部通信的方法
2017/12/31 Javascript
element-ui 的el-button组件中添加自定义颜色和图标的实现方法
2018/10/26 Javascript
vueScroll实现移动端下拉刷新、上拉加载
2019/03/22 Javascript
基于js判断浏览器是否支持webGL
2020/04/18 Javascript
详解Django中的过滤器
2015/07/16 Python
python框架django基础指南
2016/09/08 Python
python中使用xlrd读excel使用xlwt写excel的实例代码
2018/01/31 Python
Python基础教程之利用期物处理并发
2018/03/29 Python
使用Python处理Excel表格的简单方法
2018/06/07 Python
Python实现最大子序和的方法示例
2019/07/05 Python
python统计指定目录内文件的代码行数
2019/09/19 Python
解决tensorboard多个events文件显示紊乱的问题
2020/02/15 Python
浅谈在django中使用filter()(即对QuerySet操作)时踩的坑
2020/03/31 Python
详解用selenium来下载小姐姐图片并保存
2021/01/26 Python
带你认识HTML5中的WebSocket
2015/05/22 HTML / CSS
整理HTML5中支持的URL编码与字符编码
2016/02/23 HTML / CSS
阿玛瑞酒店中文官方网站:Amari.com
2018/02/13 全球购物
德国电子产品购物网站:TechInTheBasket德国
2018/12/07 全球购物
Book Depository亚太地区:一家领先的国际图书零售商
2019/05/05 全球购物
模具毕业生推荐信
2014/02/15 职场文书
中职生自荐信范文
2014/06/15 职场文书
革命英雄事迹演讲稿
2014/09/13 职场文书
2015年采购员工作总结
2015/04/27 职场文书
公务员保密工作承诺书
2015/05/04 职场文书
某学校的2019年度工作报告范本
2019/10/11 职场文书
关于MySQL临时表为什么可以重名的问题
2022/03/22 MySQL