Python处理session的方法整理

yipeiwu_com6年前Python基础

前言:

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

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

一个很简单的例子:

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

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

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

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

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

requests.session

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

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

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

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

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

代码如下:session类

requests库

 

以上就是Python处理session最简单的方法的全部内容,感谢大家对【听图阁-专注于Python设计】的支持。

相关文章

pytorch中tensor张量数据类型的转化方式

1.tensor张量与numpy相互转换 tensor ----->numpy import torch a=torch.ones([2,5]) tensor([[1.,...

对python3.4 字符串转16进制的实例详解

如下所示: def str_to_hex(s):     s = s.split(' ')     send_buf =...

对Pytorch中Tensor的各种池化操作解析

AdaptiveAvgPool1d(N) 对一个C*H*W的三维输入Tensor, 池化输出为C*H*N, 即按照H轴逐行对W轴平均池化 >>> a = torch...

pycharm: 恢复(reset) 误删文件的方法

pycharm: 恢复(reset) 误删文件的方法

昨晚写代码的时候,一不小心把某个代码文件误删了。。。赶紧上网找了一下pycharm如何恢复误删文件,结果还真有。 经过操作,成功恢复了误删文件。现将方法过程记录如下: Method 在P...

详解使用python的logging模块在stdout输出的两种方法

详解使用python的logging模块在stdout输出 前言:   使用python的logging模块时,除了想将日志记录在文件中外,还希望在前台执行python脚本时,可以将日志...