点击getstart,进入下载页面https://www.getpostman.com/downloads/,下载安装包html
双击安装包Postman-win64-7.0.9-Setup.exe,默认安装在了C:\Users\lenovo\AppData\Local\Postmannpm
在app-7.0.9目录下双击postman.exe打开postmanjson
好了,到这里经过「非法安装」安装的 Postman 已经完毕api
1.关闭掉证书浏览器
2.再关闭掉代理app
3.去掉请求头的Content-Length字段 (或者一个个试请求头的值,看去掉那些就请求成功了)less
后记:工具
网友 @ 重庆张晓祥 提供了个线索
确实让我想起之前我从浏览器哪里复制了请求头信息填到jmeter哪里,无故端key 和value 的值里面有空格 也会致使请求不成功,postman或许也有这个相似的问题post
详情参考: http://www.javashuo.com/article/p-wbstebqn-eh.html测试
https://blog.csdn.net/fxbin123/article/details/80428216
https://blog.csdn.net/ljl6158999/article/details/80111826
点击tests按钮,能够看到右侧有个snippets栏,里面就是postman内置的测试脚本,辅助对接口进行测试
选择其中的一个脚本,修改其中的参数,再次点击send,这时response的tests出现了一个1/1,说明执行一个测试而且经过测试,绿色pass说明验证经过
红色fail说明测试不经过,一个接口能够写多个脚本进行屡次测试
1. 清除一个全局变量
Clear a global variable
对应脚本:
"variable_key" postman.clearGlobalVariable();
参数:须要清除的变量的key
2. 清除一个环境变量
Clear an environment variable
对应脚本:
"variable_key" postman.clearEnvironmentVariable();
参数:须要清除的环境变量的key
3. response包含内容
Response body:Contains string
对应脚本:
"Body matches string""string_you_want_to_search" tests[] =responseBody.has();
参数:预期内容
4. 将xml格式的response转换成son格式
JSONObject Response body:Convert XML body to a
对应脚本:
var jsonObject = xml2Json(responseBody);
参数:(默认不须要设置参数,为接口的response)须要转换的xml
5. response等于预期内容
Response body:Is equal to a string
对应脚本:
"Body is correct""response_body_string" tests[] = responseBody ===;
参数:预期response
6. json解析key的值进行校验
JSON Response body:value check
对应脚本:
"Args key contains argument passed as url parameter"'test'in tests[] =responseJSON.args
参数:test替换被测的值,args替换被测的key
7. 检查response的header信息是否有被测字段
Response headers:Content-Type header check
对应脚本:
"Content-Type is present""Content-Type" tests[] = postman.getResponseHeader();
参数:预期header
8. 响应时间判断
200 Response time is less thanms
对应脚本:
"Response time is less than 200ms"200 tests[] = responseTime <;
参数:响应时间
9. 设置全局变量
Set an global variable
对应脚本:
"variable_key""variable_value" postman.setGlobalVariable(,);
参数:全局变量的键值
10. 设置环境变量
Set an environment variable
对应脚本:
"variable_key""variable_value" postman.setEnvironmentVariable(,);
参数:环境变量的键值
11. 判断状态码
200 Status code:Code is
对应脚本:
"Status code is 200"400 tests[] = responseCode.code !=;
参数:状态码
12. 检查code name 是否包含内容
Status code:Code name has string
对应脚本:
"Status code name has string""Created" tests[] = responseCode.name.has();
参数:预期code name包含字符串
13. 成功的post请求
Status code:Successful POST request
对应脚本:
"Successful POST request"201202 tests[] = responseCode.code ===|| responseCode.code ===;
14. 微小验证器
forJSON Use Tiny Validatordata
对应脚本:
var schema = {
"items" : {
"type""boolean" :
}
};
vartruefalse data1 = [,];
vartrue123 data2 = [,];
console .log(tv4.error);
"Valid Data1" tests[] = tv4.validate(data1, schema);
"Valid Data2" tests[] = tv4.validate(data2, schema);
参数:能够修改items里面的键值对来对应验证json的参数
点击save按钮,找到save as按钮,点击
这时咱们能够修改request name 也能够写一下请求的描述
接下来新建一个接口集合,写一个集合的名字,点击保存
而后在左侧功能区,找到collections栏目并点击
能够看到刚保存的api集合
找到顶层功能区,找到runner按键,并点击
选中刚才新建的api集合
点击start test,能够在右侧看到运行的结果
5.命令行运行接口集合:首先下载刚才建立的集合,点击export,并保存到指定路径
安装postman命令行运行工具newman
注:若是提示没有npm命令点击此连接
安装好newman后,命令行执行,能够看到执行结果
若是想要报告加上 -H filename 参数便可
在测试的过程当中咱们可能有多套测试环境,对应每一套测试环境的ip多是不一样的,可是接口的请求,与参数又是同样的,最笨的方法是每个环境都写一个测试集合,可是postman给咱们提供了更为便捷的方法:使用环境变量
进入请求栏目,找到no environment
点击no environment,找到manager environments,点击进入页面
![Uploading QQ20160812-2_610634.png …]
这个页面能够进行管理环境变量,点击add,添加一个环境变量
在这里输入环境变量的名字,环境变量是以键值对的形式存在的,输入环境变量的键值对,而后点击add,进行保存
回到请求测试区,点击no environment ,选择刚才新创建的环境变量,同时能够点击右侧的眼睛来查看环境变量与全局变量(后面会给你们介绍)
如今使用刚才新建的环境变量来替换uri,引用变量使用{{key}}的形式,将https://echo.getpostman.com用{{test_env}}来替换,并send发送请求
能够看到这里的结果和使用https://echo.getpostman.com是同样的,这样一组接口就能够实现写一次而经过更换环境变量来实现切换不一样的环境
虽然咱们可能有多个测试环境,可是咱们的测试数据每一个环境用的都是一组,对于postman至关于只有一组全局变量,对应多组环境变量
一样的,点击manager environment
点击globals,进入环境变量的管理页面
全局变量globals一样是以键值对的形式保存的,输入键值对,点击save
回到请求测试区,使用全局变量替换url的参数,引用方法与环境变量的引用方法一致,替换后点击send,查看结果
response依然以正确的内容显示出来
3.可使用pre-request script功能来建立环境变量与全局变量,还有销毁环境变量与全局变量,pre-request script是预置的脚本,执行在请求以前
点击pre-request script,进入预设脚本页面
点击右侧的脚本,并设置全局变量与环境变量,并将url进行替换,点击send发送,看到结果仍是以正确的形式进行展现
一样的咱们也能够在tests里面使用预置的脚本进行设置与清除环境变量用法同样
4.环境变量与全局变量都已经进行了设置,咱们还能够在tests里面进行引用,这样就解决了上下游数据互传的问题了了
点击tests,切换到测试脚本页面,输入脚本