持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第28天,点击查看活动详情
postman介绍
postman是一款API/接口功能测试工具,可以很方便的请求接口,查看响应,还能设置断言,实现接口自动化测试,在进行前后端开发时,postman很实用。
主页面
详细介绍
1.左侧collections
可以把http请求分组管理,例如一个项目中一个角色可以分为一个collections,或者一个项目为一个collections,collections可以重命名,可以添加子文件,添加子文件夹
我们点击edit,进入编辑如下图,可以设置请求头、前置脚本、断言,我们后续的自动化接口测试就要通过这个来实现。
2.中间主体区
分为上下结构,上面是请求的一些信息,下面是相应回来的信息
- 在上部结构中设置请求地址、请求方法、传递参数、设置请求头、设置前置脚本
- 在下部结构中查看响应数据、响应头、断言结果、状态码、响应时间,还可以将响应回来的数据设置为不同的格式
- 在这里我们可以定义变量,包括全局变量和局部变量,通过{{}}的形式将变量放入双括号中,例如:url地址,我们可以提前设置好全局变量,点击右上角的小眼睛,定义变量url,后续只需要用只需要通过{{url}}即可使用
3.导入和导出功能
在postman中,可以将collection导出为JSON格式(或link连接),如果另一位小伙伴需要进行测试,那么直接将导出的JSON格式文件(link连接)导入到postman中即可。
以下是通过导出link连接
导出json也同理
我们只需要拿到postman提供的网址即可,点击import进行导入
自动化接口测试
1.测试流程
为什么需要自动化接口测试?
因为有时候接口数量很多,而且有些接口还是有关联的,如果一个一个的测,需要耗费大量时间和精力。通过自动化接口测试,可以利用前置脚本和断言,提前设置好测试顺序,就能迅速的将所以接口测试完,提高了开发效率。
步骤:自动化测试,首先我们需要将所以的接口都添加到同一个collection中,然后编写自动化测试脚本,接着将需要测试的脚本拍好顺序,最后执行即可。
postman中的自动化接口测试可以设置循环次数和之间间隔,很方便。但是它不是并发执行的,区别于(selenium的性能测试,它是并发执行)并发测试,它是按照顺序从上往下,并发是一切执行。
2.脚本语句
使用自动化接口测试前,需要了解postman提供脚本语句,是通过js实现的,对于前端人员很友好。
- pre-request脚本,是在对API进行请求之前的脚本(前置脚本),一般用于动态生成参数。
- test脚本,实在完成API访问并得到其response回应之后运行的脚本,一般用于获取response的内容,或用于判断请求是否成功。
流程:pre-request脚本 => request => response => test
常用的脚本语句
// 断言响应事件小于200ms
pm.test("Response time is less than 200ms", function () {
pm.expect(pm.response.responseTime).to.be.below(200);
});
// 例:需要校验body是否包含"success"
pm.test("Body matches string", function () {
pm.expect(pm.response.text()).to.include("success");
});
pm.test("Content-Type is present", function () {
pm.response.to.have.header("Content-Type");
});