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实现字符串连接的三种方法及其效率、适用场景详解
Jan 13 Python
Python正则抓取新闻标题和链接的方法示例
Apr 24 Python
Python3.5 处理文本txt,删除不需要的行方法
Dec 10 Python
django 2.2和mysql使用的常见问题
Jul 18 Python
使用coverage统计python web项目代码覆盖率的方法详解
Aug 05 Python
Python的条件锁与事件共享详解
Sep 12 Python
Python实现打印实心和空心菱形
Nov 23 Python
Python高级特性——详解多维数组切片(Slice)
Nov 26 Python
python如何解析复杂sql,实现数据库和表的提取的实例剖析
May 15 Python
Python 利用Entrez库筛选下载PubMed文献摘要的示例
Nov 24 Python
Selenium+BeautifulSoup+json获取Script标签内的json数据
Dec 07 Python
selenium如何定位span元素的实现
Jan 13 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
ASP和PHP都是可以删除自身的
2007/04/09 PHP
php下实现一个阿拉伯数字转中文数字的函数
2008/07/10 PHP
memcached 和 mysql 主从环境下php开发代码详解
2010/05/16 PHP
PHP5中新增stdClass 内部保留类
2011/06/13 PHP
JavaScript 匿名函数(anonymous function)与闭包(closure)
2011/10/04 Javascript
jQuery之ajax技术的详细介绍
2013/06/19 Javascript
jQuery 设置 CSS 属性示例介绍
2014/01/16 Javascript
JavaScript常用脚本汇总(三)
2015/03/04 Javascript
通过JS判断联网类型和连接状态的实现代码
2015/04/01 Javascript
jQuery UI库中dialog对话框功能使用全解析
2016/04/23 Javascript
JavaScript的ExtJS框架中表格的编写教程
2016/05/21 Javascript
jQuery实现页面评论栏中访客信息自动填写功能的方法
2016/05/23 Javascript
vue.js学习笔记:如何加载本地json文件
2017/01/17 Javascript
Vue组件通信实践记录(推荐)
2017/08/15 Javascript
JavaScript 完成注册页面表单校验的实例
2017/08/19 Javascript
nginx部署访问vue-cli搭建的项目的方法
2018/02/12 Javascript
使用vue + less 实现简单换肤功能的示例
2018/02/21 Javascript
对vue里函数的调用顺序介绍
2018/03/17 Javascript
vue上传图片到oss的方法示例(图片带有删除功能)
2018/09/27 Javascript
vue自定义指令的创建和使用方法实例分析
2018/12/04 Javascript
手把手教你 CKEDITOR 4 实现Dialog 内嵌 IFrame操作详解
2019/06/18 Javascript
elementUI 动态生成几行几列的方法示例
2019/07/11 Javascript
vue把输入框的内容添加到页面的实例讲解
2019/11/11 Javascript
Python批量查询域名是否被注册过
2017/06/21 Python
Python中动态检测编码chardet的使用教程
2017/07/06 Python
Python探索之ModelForm代码详解
2017/10/26 Python
Python使用matplotlib实现基础绘图功能示例
2018/07/03 Python
python使用matplotlib画饼状图
2018/09/25 Python
Python中pymysql 模块的使用详解
2019/08/12 Python
在TensorFlow中实现矩阵维度扩展
2020/05/22 Python
使用iframe+postMessage实现页面跨域通信的示例代码
2020/01/14 HTML / CSS
Kingsoft金山公司C/C++笔试题
2016/05/10 面试题
我的大学生活职业生涯规划
2014/01/02 职场文书
2015年暑期见闻
2015/07/14 职场文书
Mysql中存储引擎的区别及比较
2021/06/04 MySQL
JS实现简单九宫格抽奖
2022/06/28 Javascript