当前位置:首页 > 编程 > Python > 正文内容

Python登录状态进行接口测试 Python 保持登录状态进行接口测试的方法示例

小编编4年前 (2021-01-21)Python607

  • 转自:码农之家


这篇文章主要知识点是关于Python、登录状态、接口测试、Python之POST登录测试 的内容。

Python登录状态进行接口测试

                记录三种添加cookie保持接口登录状态的方法,方便自己回顾。

1.简单粗暴式。

                此方法比较小白,前提是已经通过fiddler抓包等方式拿到了cookie,然后直接塞进去。

import requests
 
trainsUrl ='http://XXX.com/trains'
headers = {
  "Content-Type":"application/json;charset=UTF-8",
}
cookies = {
  "XXXthor":"XXXXXX105a42"
}
prames = {
  'depId':'1',
  'arrId':'2',
  'goDate':'XXXX'
}
res = requests.get(url=trainsUrl, cookies=cookies, params=prames, headers=headers).json()

2.从登录接口获取

import requests
 
loginUrl ="http://XXX.com/login"
data1 = {
  "userName":"157XXXX",
  "userPwd":"XXXX"
}
headers = {
  "Content-Type":"application/json;charset=UTF-8"
}
#运行登录接口
loginRes = requests.post(url=loginUrl, json=data1, headers=headers)
trainsUrl ='http://XXX.com/trains'
parames = {
  'depId':'1',
  'arrId':'2',
  'goDate':'1538100286000'
}
#运行trainsUrl接口时,从loginRes中获取cookies
res = requests.get(url=trainsUrl, params=parames, cookies=loginRes.cookies).json()

                这种方式是先运行登录接口,然后从loginRes中获取cookies,以供后续接口使用。

3.使用会话对象保持登录---摘自网络

import requests
 
# Session 会话对象
# 会话对象让你能够跨请求保持某些参数。它也会在同一个 Session 实例发出的所有请求之间保持 cookie
# 会话对象具有主要的 Requests API 的所有方法。你可以当成 Request去使用
sessionRequest = requests.session() #实例化会话对象
loginUrl ="http://XXX.com/login"
data = {
  "userName":"157XXXX",
  "userPwd":"XXX"
}
headers = {
  "Content-Type":"application/json;charset=UTF-8"
}
#第二次请求的url
trainsUrl ='http://XXX/trains'
parames = {
  'depId':'1',
  'arrId':'2',
  'goDate':'XXXXX'
}
#登录
resp = sessionRequest.post(url=loginUrl , json=data, headers=headers)
#请求trains接口
trainsResp = sessionRequest.get(url=trainsUrl, params=parames)

                以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。

Python之POST登录测试

不解释,直接上代码:


 1 #!/usr/bin/env python   2 # -*- encoding: utf-8 -*- 3  4 """  5 @version: v1.0 
 6 @author: elijahxb 7 @OS: linux 8 @contact: elijahxb@163.com 
 9 @site:  
10 @software: PyCharm Community Edition 
11 @file: zhangye.py 
12 @time: 17-7-2 下午12:16 
13 """14 15 '''16 本次登录测试:17 USERNAME:test001_00118 PASSWORD:test00119 URL:   
20 TYPE:  POST21 HOST:  www.zhangye.ccoo.cn22 POSTURL:23 POSTDATA:username=test001_001&password=test00124 '''25 import httplib26 import urllib27 28 HOST = '182.92.232.234'29 SOURCEURL = ""30 POSTURL = ''31 PORT = 8032 STRICT = False  # 默认False,表示无法解析服务器返回的状态行时,是否抛出BadStatusLine异常33 TIMEOUT = 534 HEADERS = {35     'Content-type': 'application/x-www-form-urlencoded',36     "Accept": "*/*"37 }38 TestDATA = {39     'username': 'test001_001',40     'password': 'test001'41 }42 TestDATA = urllib.urlencode(TestDATA)43 44 try:45     # Conn = httplib.HTTPConnection(HOST, PORT, STRICT, TIMEOUT, SOURCEURL)46     HttpClient = httplib.HTTPConnection(HOST)47     HttpClient.request('POST', POSTURL, TestDATA, HEADERS)48 49     response = HttpClient.getresponse()50     print response.status51     print response.reason52     print response.read()53     print response.getheaders()54 except Exception, e:55     print e56 finally:57     if HttpClient:58         HttpClient.close()


以上就是Python之POST登录测试的详细内容,更多请关注码农之家其它相关文章!

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

扫描二维码推送至手机访问。

版权声明:本文由别跟我这儿胡闹发布,如需转载请注明出处。

转载请注明出处:http://hunao.vip/?id=36

分享给朋友:

相关文章

 DataNitro插件介绍

DataNitro插件介绍

      DataNitro插件是一款高效专业的excel插件工具,DataNitro插件功能强劲,支持用户在excel中使用Python...

Anaconda 镜像使用帮助

Anaconda 是一个用于科学计算的 Python 发行版,支持 Linux, Mac, Windows, 包含了众多流行的科学计算、数据分析的 Python 包。 Anaconda 安装包可...

最新idea2020激活码超详细教程

最新idea2020激活码超详细教程

转自脚本之家:https://www.jb51.net/article/196349.htm 最近有朋友向小编反应idea激活码失效的问题,今天小编给大家推荐使用设置插件仓库的方法成功激活i...

Requests出现乱码,一次解决!

Requests出现乱码,一次解决!

回顾一下爬虫的小基础小知识点。 1. Python 爬虫基础 1.1 Web 基础概念 写爬虫必须弄懂的问题: 从输入网址到看到网页,都发生了什么?这个问题是个经典问题,如果...

Python-Excel 模块哪家强?

Python-Excel 模块哪家强?

0. 前言从网页爬下来的大量数据需要清洗?成堆的科学实验数据需要导入 Excel 进行分析?有成堆的表格等待统计?作为人生苦短的 Python 程序员,该如何优雅地操作 Excel?得益于前人的辛勤劳...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。