前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用python实现接口测试(一 、使用POST和GET请求api)

用python实现接口测试(一 、使用POST和GET请求api)

作者头像
用户6367961
发布2019-09-29 20:03:40
2.9K0
发布2019-09-29 20:03:40
举报

相信大家都知道,用Python来做接口测试,使用的方法很多,如POST、GET等方法请求API参数。

下面就 豆瓣图书的用户收藏信息api来学习Python3+urllib这两个库来实现POST和GET下的api请求实例,附上代码注释:

一、接口相关信息。如下:

图片来自简书1

二、我们可以把:name换成豆瓣老大阿北的用户名,即https://api.douban.com/v2/book/user/ahbei/collections,来看看阿北平时喜欢看什么书

1.用post方法请求api

#coding:utf-8 #auther:xiaozhong #Data:2017-11-12 15:30 """"用post方法请求api:这种方式把参数放在请求内容中传递,比较安全""" importurllib.request,urllib# 把这两个库导入 url ='https://api.douban.com/v2/book/user/ahbei/collections'# 这是要请求的url data={'status':'read','rating':4,'tag':'小说'}# 根据api文档提供的参数,我们来获取一下阿北读过的书中,他标记了‘小说’这个标签的三星书籍,把这些参数值存在一个dict里 #data = urllib.parse.urlencode(data) # 把参数进行编码 data = urllib.parse.urlencode(data).encode(encoding='UTF8') url2 = urllib.request.Request(url,data)# 用.Request来发送POST请求,指明请求目标是之前定义过的url,请求内容放在data里 response = urllib.request.urlopen(url2)# 用.urlopen打开上一步返回的结果,得到请求后的响应内容 apicontent = response.read()#将响应内容用read()读取出来 print('用post方法请求api') print(apicontent)#打印读取到的内容

2.用get方法请求api

#coding:utf-8 #auther:xiaozhong #Data:2017-11-12 15:30 """"用get方法请求api:这种方式把参数放在直接放在url中""" url ='https://api.douban.com/v2/book/user/ahbei/collections' data = {'status':'read','rating':3,'tag':'小说'} data = urllib.parse.urlencode(data) url = url +'?'+ data """"跟post不同的只有这一句,使用?把url和data的内容连接起来, 结果是https://api.douban.com/v2/book/user/ahbei/collecti ons?status=read&rating=3&tag=%E5%B0%8F%E8%AF%B4""" response = urllib.request.urlopen(url2)# 用.urlopen打开上一步返回的结果,得到请求后的响应内容 apicontent = response.read()#将响应内容用read()读取出来 print('用get方法请求api') print(apicontent)#打印读取到的内容

三、运行结果分析

从下图可以看出,POST和GET的请求结果是一致的

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-12-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 自学测试之道 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档