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

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

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

  • 转自:码农之家


这篇文章主要知识点是关于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...

Python-Excel 模块哪家强?

Python-Excel 模块哪家强?

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

Anaconda 镜像使用帮助

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

Requests出现乱码,一次解决!

Requests出现乱码,一次解决!

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

最新idea2020激活码超详细教程

最新idea2020激活码超详细教程

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

发表评论

访客

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