话说
各位读者盆友,早上好。这里总结一下Postman-一款测试工具的基础知识。太基础?Yes!
目录
一、安装
二、使用场景
三、日常问题
四、总结
工具:Postman
难度系数:★☆☆☆☆
建议用时:30min
Postman是邮递员的意思,那个图标也很Q,感觉像是悬浮的宇航员。在HTTP等协议中,这个软件测试接口,就类似邮递员,传递参数,发起请求,等待响应,很形象的一个名字。
当然还有其他测试工具,比如fidder之类的,这个主要是用来抓取包的,读者要根据实际情况选择即可。
一、安装
下载安装Postman,在下的安装环境是Mac,过程简单,省略。安装后是这样的。
二、使用场景
这里通过很实际的问题,问答方式来介绍使用场景。
1)前后端分离,后端看不到页面,如何拿Token?
第一步,一般都是要登录,登录就涉及到用户名和密码,这个一般是Post请求,目的是拿到Token,然后携带这个Token去访问别的接口。
一图胜千言。
选择请求方式(登录一般都是Post,安全考虑)==》填写访问地址==》因为是Post,所以传参需要通过Body来传参,也就是Json格式传参 ==》Header部分要指定Content Type==》Send==》观察返回的Body里面是否有data,如果你看到一长串看不懂的东东,那就对了!
2)拿到了Token,如何发起Get请求?
选择 Get还是Post,是根据后端方法上的限制决定的,一般都是@Get @Post这样注解形式体现,如果是Get,那么就Get,是Post,就Post。
核心是携带Token过去,既然是Get请求,那么参数通过? &方式传过去就行。
这里的token就表明你已经得到许可,Token中有你的身份信息、角色信息等。
3)拿到了Token,如何发起Post请求?
既然是Post,那么传参就要通过Body方式来传参喽。
这里需要注意一下,如何用json方式表示枚举?表示Map集合?表示对象?
枚举还是字符串方式表示:”“:””
Map集合:{
“”:”“,
“”:””
}
对象,应该是[
{“”:”“,
“”:”“}
]
Header部分呢?
自然也要携带Token,指定:
Content-Type
Accept
4)还有其他更加高级的用法?
自己摸索呗 ……
5)对于json格式传参,举几个小栗子呗?
没问题!
{
"name":"合作机构041303",
"type":"INSURANCE",
"shortName":"041303",
"provinceCode":"110000",
"companyDescription":"888",
"logos":{
"additionalProp1":"2018/04/13/84cf0cb92616461aa187d45bbd477c75.jpeg"
},
"display": false
}
这个”type”:”INSURANCE”, 就是枚举类型,在JSON中要这么传参
这个logos就是Map类型,要这么传参。
注意这个display是boolean类型,”true”是没有引号的,常识不要忽略了。
三、日常问题
道路总不是一帆风顺的…..
使用Postman最常见是这些返回情形:
情形1:
{
"code": "400",
"message": "请求参数错误",
"data": null
}
这表明什么?参数有问题:什么问题?该传的参数没有传,传的参数格式不对等等;
情形2:
{
"code": "415",
"message": "RESTEASY003065: Cannot consume content type",
"data": null
}
没有指定Content-Type,不知道该怎么返回
情形3:
{
"code": "405",
"message": "RESTEASY003650: No resource method found for POST, return 405 with Allow header",
"data": null
}
这明显是没有post方法,去调接口,后端找不到这个post类型的方法。肯定是方法类型判断错了。
情形4:
{
"code": "400",
"message": "内部错误",
"data":
}
这有几种情况:后端服务器挂了、完全没有请求出去等等。
四、总结
哈哈,这些测试工具,使用起来很方便,我们要做到的就是快速上手,快熟熟练,快速搞定大量工具,就这么简单。
下期再会!