python接口自动化:requests的保持会话

在设计接口测试工具的时候,会涉及到的一个点是登录后保持会话。保持会话有几种方法,在java的HttpClient中可以通过CookieStore去实现,在python可以通过set_cookie方法将登录获取到的cookie写到本地,之后的接口再通过get_cookie获取本地文件中的cookie。本篇描述一种比较简单的办法,基于requests的requests.Session()方法实现保持会话。

1.先在登录接口全局定义一个Session

import requests

# 定义一个全局session
s = requests.Session()   

class testlogin():
    Baseurl = "" 
    
    def test_login(self):
                url=BaseUrl+""
                headers={}
        data ={}
        r =s.post(url,json=data,headers=headers)
        result=r.json()
        # print(r.cookies) 
        return s
        

2.在其他接口使用登录接口的Session

from xxx import testlogin

s = testlogin().test_login()
 
class testxx:
    def test01(self):
        url =""
        r = s.get(url)
        result = r.json()
        print(result)
        
if __name__ == "__main__":
    testxx().test01()