1、安装Postman
1、postman本地应用(Windows系统)
https://www.postman.com/downloads/
2、Postman工具简介
postman提供了一个多窗口和多选项卡页面用于发送和接受接口请求。
1、侧边栏
postman侧边栏可进行查找、管理请求和集合操作。包含了Collections、APIs、Environments、Mock Servers、Monitors、History。
①、Collections选项卡:用来创建和管理集合。
②、History选项卡:用来展示发送过的请求。
2、工具栏
3、构建器上半部分是请求构建器、下半部分是响应构建器。
①、Cookies:单击“Cookies”链接,打开“MANAGE COOKIES”,在这里可以管理与请求相关的Cookies。
4、控制台①、postman控制台:其包含HTTP请求和响应的运行日志。View----Show Postman Console;
②、DevTools控制台
5、菜单栏
6、状态栏
7、选项卡和窗口
3、Postman账号
1、注册一个postman账号
注册账号是免费的,注册之后获得的权限:
a、同步和备份历史、集合、环境和预置头;
b、可以轻松处理来自不同机器的多个Postman实例;
c、创建集合链接发送给其他开发人员;
当然不注册也可以使用。
4、Postman同步
5、Postman设置
1、一般设置
①、Trim keys and values in request body(在请求体中删除键和值);
②、SSL certificate verification(SSL证书验证)在发送请求时阻止应用程序检查SSL证书的有效性;
③、Always open requests in new tab(总是在新标签打开请求):设置为“ON”,所有新打开请求都在一个新标签中呈现;
④、Language detection(语言检测):设置为“JSON”,将强制响应以JSON的格式呈现,而不考虑响应内容类型的headers;
⑤、Request timeout in ms(0 for infinity)(请求超时时间,单位为毫秒,0代表无穷大)。设置应用程序等待响应的时间,超多设定的时间返回服务器时无响应。值0表示无穷大,将永远等待响应;2、主题设置
3、键盘快捷键设置
4、数据导入/导出设置
5、附加组件设置
6、同步设置
7、证书设置
8、代理设置
9、更新设置
6、发送第一个请求
1、发送请求的步骤
①、在URL输入框中输入地址:“http://postman-echo.com/get”
②、点击“Send”按钮发送请求,看到服务器的响应信息 ,在底部会有一些JSON数据。
2、工作原理
①、输入请求(URL),并单击“Send”按钮;
②、该请求由API服务器接收,并返回响应;
③、响应由Postman接收,接口响应内容在工具中可视化;
7、将请求保存到集合
通过Postman发送的每一个请求都会出现在左边的“History”选项卡下。在请求数量比较少时,通过“History”选项卡重新使用请求时非常方便的。然而,随着请求越来越多,在“History”选项卡中查找一个特定的请求可能变得费时。集合用来保存一组请求。
①、创建一个请求,然后单击“Save”按钮以打开“SAVE REQUEST”窗口;
②、输入请求名(可选)。如果不输入,默认名称将是请求URL;
③、输入请求描述信息;
④、将该请求保存到一个现有集合中,然后单击“Save to my-collection”按钮保存;
8、Postman基础用法
8.1、请求中常见的数据传递格式
数据类型 | 样例数据 | 请求方式 | 请求头(Content-Type) |
字符串 | URL?username=admin | GET | / |
表单 | 如下图 | POST | application/x-www-form-urlencoded |
JSON | {“username”:“admin”} | POST | application/json |
9、Postman高级用法
9.1、管理用例
1.1 实现步骤:
- 创建测试集-New Collection
Collection可以理解成一个项目(系统),包含多个接口请求 - 创建目录-Add Folder
Folder可以理解成一个项目模块 - 添加请求-Add Request
9.2、Postman断言
断言:通过代码自动判断实际运行的结果是否与测试用例中的预期结果一致;
断言结果:
结果一致:测试通过pass
结果不一致:测试不通过fail
1、特点:
- Postman的断言使用JavaScript编写,在Tests标签页里;
- Tests中的脚本在发送请求之后执行,会把断言的结果(PASS/FAIL)在‘Test Results’标签页中展示;
2、常用断言:
1、断言响应状态码是否为200(Status code is 200);
2、断言响应体JSON数据校验(Response body:JSON value check);
3、断言响应体是否包含指定字符串(Response body:Contains string);
4、断言响应体是否等于指定字符串(Response body:IS equal to a string);
5、判断响应头是否包含指定的头信息(Response headers :Content-Type header check);
3、断言状态响应码:
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
pm.test是postman内置对象pm对外提供的一种test的方法,功能是使用pm.test来编写测试脚本时,即使方法内部处理内容出现错误也不会影响到后续自动化测试脚本的运行。
10、全局变量与环境变量
10.1、概念
全局变量:作用单位是针对postman下面所有测试集均生效;全局变量是全局唯一的,不可重复定义的变量;
环境变量:
1、一个变量只属于某个环境,在某一个环境中变量不可重复定义;
2、在环境与环境之间可以定义重复的变量;
3、一个环境可以包含多个环境变量;
4、常见环境分类:开发环境、测试环境、生产/上线;
10.2、设置变量
全局变量:
1、手动设置:
2、代码设置:pm.globals.set(“var_name”,value);
环境变量:
1、手动设置:
2、代码设置:pm.environment.set(“var_name”,value);
10.3、获取变量值
全局变量:
1、请求参数中获取:{{var_name}}
2、代码中获取: var value = pm.globals.set(“var_name”);
环境变量:
1、请求参数中获取:{{var_name}}
2、代码中获取:var value = pm.environment.set(“var_name”);