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

yipeiwu_com5年前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中encode()方法的使用简介

 encode() 方法返回字符串的编码版本。默认编码是当前的默认字符串编码。可给予设置不同的错误处理机制。 语法 以下是encode()方法的语法: str.encode...

Python读写及备份oracle数据库操作示例

Python读写及备份oracle数据库操作示例

本文实例讲述了Python读写及备份oracle数据库操作。分享给大家供大家参考,具体如下: 最近项目中需要用到Python调用oracle实现读写操作,踩过很多坑,历尽艰辛终于实现了。...

详解在Python的Django框架中创建模板库的方法

不管是写自定义标签还是过滤器,第一件要做的事是创建模板库(Django能够导入的基本结构)。 创建一个模板库分两步走:     第一,决定模板库应该放在哪个...

python中map()与zip()操作方法

对于map()它的原型是:map(function,sequence),就是对序列sequence中每个元素都执行函数function操作。 比如之前的a,b,c = map(int,r...

Python深入学习之内存管理

Python深入学习之内存管理

语言的内存管理是语言设计的一个重要方面。它是决定语言性能的重要因素。无论是C语言的手工管理,还是Java的垃圾回收,都成为语言最重要的特征。这里以Python语言为例子,说明一门动态类型...