一、为什么选用postman工具做接口自动化测试
postman调试工具无论对于开发和测试小白,还是技术大牛来说应该都耳熟能详,在过去的几年里大家对这款工具应用最广的用途是把当作接口调试的测试工具,它能发送几乎所有类型的HTTP请求,操作界面非常简洁美观(大家来欣赏下图),支持抓包,保存历史记录,有用户组管理机制,方便多端同步用例等等。最主要的是各位小伙伴已经对它用于接口调试的功能非常熟悉,已经为我们接下来使用它做持续集成的接口自动化打下了良好的基础。
二、postman 基础知识
相信大家使用postman来调试接口应该是相当熟悉了,所以还不懂使用的同学可以在网上找到相关的资料(非常多),或者直接查阅官网,我建议大家还是要学会看官方文档,度娘很多教程可能会不全或者已经过时了,官网是最新最全的学习文档,不懂就慢慢看,这篇文章只能带着大家入门,修行只能靠自己(微笑)。
官方文档:https://learning.getpostman.com/docs/postman/launching_postman/
1、postman版本选择
postman分为chrome插件版和native版本,插件版的有很多功能都受限制,比如:必须要安装扩展才可以操作cookie,headers设置受限制,没有native版本的Postman console,非常不方便调试等,不方便我们后续做接口自动化,所以版本必须选择native版,版本号用最新的就可以。
工具下载:https://www.getpostman.com/downloads/
2、postman代理抓包
由于postman不是类似fiddle这种专门用于抓包的软件,fiddler软件安装后默认打开抓包功能,默认端口是8888,但是postman需要自己手动打开代理设置。设置方法如下:
①点击右上角的拦截图标,打开【Capture requests】,设置好Port和Target
注意Capture requests按钮一定是要处于on的状态;
Port:就是端口,只要不设置系统和浏览器的冲突端口就可以,比如9999;
Target:就是抓到的HTTP包存放的目标地,我一般选择放在history,方便查看。
②打开浏览器的代理设置,设置相同端口
打开浏览器,找到代理服务器,将地址修改为本地机器的ip地址,端口设置为第①步设置的端口号,点击确定即可。
我们演示的这个设置方法是以PC端为例子,有些同学需要抓APP端的包。设置方法原理也大概相同,大家可以参看官网文档中的设置方法即可。
移动端设置方法:
3、Postman调试控制台
打开左下角打开【Postman console】控制台,当我们某个测试用例跑不通的时候需要调试,可以打开这个Postman的控制台方便查看接口调试的打印信息,当然我们后续用js写的脚本可以在控制台中看到输出信息。
4、Postman发送请求
发送请求是Postman最核心的功能,如下图选择好请求方式及接口地址、相应参数,点击发送即可。有两个地方强调下:
①需要发送上传文件的请求,在body中选择选择form-data,选择File选项后即可选择文件
②可以将请求头统一管理,打开任意一个请求tab,点击Headers->Presets->ManagePresets可以设置好请求头信息,下一个请求再需要相同的请求头便可以从这里读取。
三、Postman变量与集合
1、什么是变量?
首先我们来思考一个问题,为什么要使用变量,如果某个参数值只需要在某个独立接口的使用一次,那么我们可以不使用变量,但是如果变量需要在多个位置重复使用,或者发生接口传递(即前一个接口的返回值用于下一个接口的请求参数),那么借助变量,Postman就可以实现业务逻辑与测试数据分离,帮助我们建立健壮的测试用例。