python3+requests接口自动化session操作方法

yipeiwu_com6年前Python基础

在进行接口自动化测试时,有好多接口都基于登陆接口的响应值来关联进行操作的,在次之前试了很多方法,都没有成功,其实很简单用session来做。

1、在登陆接口创建一个全局session

# -*- coding: utf-8 -*-
import requests
'''在登陆模块创建一个全局session,在其他接口操作时带入登陆时的session,保持session的一致性'''
s = requests.Session()#定义一个全局session
class testlogin():
 login_url = "http://api-xxxxxx/api/Account/Login" 
 username = "xxxxx"
 password = xxxxx
 def test_login(self):
  data ={
   "UserName" : self.username,
   "Password" : self.password
  }
  r = s.post(self.login_url,data)
  print(r.cookies)
  return s

2、在其他接口调用登陆的session,用这个session.post()去访问其他接口

from test_case.loggin import testlogin
import unittest

'''这里导入之前的登陆模块,调用登陆模块的session,然后去执行其他接口'''
s = testlogin().test_login()

class testtransfer(unittest.TestCase):
 def setUp(self):
  self.transfer_url = "http://xxxxxxx/Transfer/DoTransferToGame"
 def test_transfer(self):
  url = self.transfer_url
  data ={"Amount":xx,
    "GamePlatform":"xxxx"
    }
  r = s.post(url,data)

  print(r.text)
if __name__ == "__main__":
 unittest.main()

以上这篇python3+requests接口自动化session操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python编写带选项的命令行程序方法

运行python程序时,有时需要在命令行传入一些参数。常见的方式是在执行时,在脚本名后直接追加空格分隔的参数列表(例如 python test.py arg0 arg1 arg2),然后...

Django Admin实现上传图片校验功能

Django Admin实现上传图片校验功能

 Django 为未来的开发人员提供了许多功能:一个成熟的标准库,一个活跃的用户社区,以及 Python 语言的所有好处。虽然其他 Web 框架也声称能提供同样的内容,但 Dj...

python 调试冷知识(小结)

python 调试冷知识(小结)

对于 python 代码的调试我们通常都是使用 IDE 自带的调试功能。但是 IDE 提供的调试功能存在局限性,例如在测试服务器上调试代码,但是又不可能在测试服务器上安装 IDE 进行调...

python之生产者消费者模型实现详解

代码及注释如下 #Auther Bob #--*--conding:utf-8 --*-- #生产者消费者模型,这里的例子是这样的,有一个厨师在做包子,有一个顾客在吃包子,有一个服务...

python的中异常处理机制

什么是异常处理 定义:异常处理就是我们在写Python时,经常看到的报错信息,例如;NameError TypeError ValueError等,这些都是异常。 异常是一个事件,改事件...