postman是一个做接口测试的工具,它是谷歌公司的,可谓是根正苗红的大家族。在接口测试领域和它拼的一个手指头也能数得出来。POSTMAN本只是Chrome的一个插件工具,后来谷歌老爹看着小家伙越来越受测试工程师的喜爱,名气越来越大,便做了一个决定给了它一个正名,承认postman是谷歌成员的身份。postman不在是寄生在Chrome浏览器的一个插件了。现在的postman是个真男人了,有了自己的APP,不再寄人篱下后也混越好。目前只有同是名门的jmeter可以和他有一拼。jmeter是何许人也? Apache你一定听说过。它就来自Apache家族。
postman能做的事情有什么。无非就是遵循接口测试的原理罢了。接口测试的原理就是你发一个请求给服务器,服务器返回一个响应报文。然后我们判断这个响应报文的数据是否和预期的一样。这个预期看需求文档就行了。
其实我们用python代码也能实现这个过程。无非就是你拿着接口(实质就是个URL),在URL里面放上你要请求的数据对应的参数就行了。比如下面这个水质量的接口文档:
接口地址:http://web.juhe.cn:8080/environment/water/river
返回格式:json
请求方式:get
请求示例:http://web.juhe.cn:8080/environment/water/river?river=流域名称&key=您申请的APPKEY值
接口备注:有的监测站点没有总有机碳监测数据
这个接口url为http://web.juhe.cn:8080/environment/water/river
,但是如果你要查询长江流域的水质量,就要在这个接口URL地址中加入参数?river=流域名称&key=您申请的APPKEY值。然后再用get方法进行请求就行了。
postman的作用就是把这个过程图形化了,操作也就更简单了。postman很简单,我就不过做笔记了。今天用python代码做一下。
import requests
data = {
"times": 100, # 请求次数
"method": "POST", # GET or POST
"url": "http://xxx.com/xxx",
"cookies": {
"PHPSESSID": "cnguud4r1hmn3passs906odp21"
},
"proxy": {
# 代理设置
},
"header": {
"Content-Type": "application/json", # application/x-www-form-urlencoded
"user-agent": "python-mock/0.0.1",
"token": ""
},
"body": {
# 请求参数
}
}
index = 1
while index <= data["times"]:
if data["method"] == "GET":
response = requests.get(
data["url"], params=data["body"], headers=data["header"], cookies=data["cookies"], proxies=data["proxy"])
elif data["header"]["Content-Type"] == "application/json":
response = requests.post(
data["url"], json=data["body"], headers=data["header"], cookies=data["cookies"], proxies=data["proxy"])
else :
response = requests.post(
data["url"], data=data["body"], headers=data["header"], cookies=data["cookies"], proxies=data["proxy"])
if response.status_code == 200:
result = response.content.decode('utf-8')
else:
result = "访问失败"
print("第 %s 次执行:%s" % (index, result))
print()
index += 1
#Content-Type:application/json
#Content-Type:multipart/form-data