在做接口自动化过程中,我们常常会用到用户登录后进行接口测试,那么我们如何进行获取header中的session呢。我们现在看一下以下代码:
def session(DATA):
#通过配置文件获得url地址,也可以写死在这里
Url = ConnUrl.getUrl()
#声明request的请求类型,是json还是text
header = {'content-type':'application/octet-stream'}
#发送登陆请求
post = requests.post(Url, data=DATA, headers=header)
#通过post方法中的headers获取session,并且按照“分号进行切割,取第一位的数据”
jsessionid = post.headers['Set-Cookie'].split(';')[0]
#返回session
return jsessionid
#关闭链接
post.close
大家看,其实我们通过python的requests方法就可以很轻松的获得用户的session,在测试其他接口时,我们把session插入到header里即可,如下:
def posttest(jsessionid)
#定义接口的请求地址
url=http://IP/login
#测试数据要用字典的方式定义
data={'参数1':'测试数据1','参数2':'测试数据2'}
#定义header关键内容,header依然是字典的方式
header={
'content-type':'application/json',
'session':jsessionid
}
#发送请求
post = requests.post(Url, data=DATA, headers=header)
#获取响应结果中的文本
respond = post.text
#断言相应结果是否与预期结果想一致
assert '预期结果' in respond
十年专业网络公司历程,坚持以创新为先导的网站服务,服务超过上千多家企业及个人,涉及网站设计、APP应用开发、微信开发、平面设计、互联网整合营销等多个领域。在不同行业和领域给人们的工作和生活带来美好变化。
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款