Postman 最基本的功能用来重放请求,并且配合良好的 response 格式化工具。高级点的用法可以使用 Postman 生成各个语言的脚本,还可以抓包,认证,传输文件。仅仅做到这些还不能够满足一个系统的开发,或者说过于琐碎,你仍需要频繁地在开发环境,测试环境,生产环境中来回切换。单一的请求也不够,你需要维护系统所有 API 的请求,并且每个请求还带有不同的 querystring 和 body,所以postman自动化测试可以通过书写脚本大大的提升测试效率。
PostMan针对请求编写的测试脚本,Tests输入框中内容采用的是JavaScript语法,右侧是一些预先配置的代码片段。我们还可以在Pre-request Script中编写脚本,用于在发送请求前执行。
具体怎么写自动化测试,我用数仓接口v1/hospital/update为例,实现修改医院并校验效果:
1.数据准备。
去数据库查看这条数据:医院编号:7015,医院名称:异常,医院地点:无,我们调用postman把它修改成 “休斯顿医院”,地点上海。
-
在地址栏输入指定url,将数据以json格式输入输入框。
3.在“Tests”中添加简单断言。
4.将该测试保存至collection中test文件夹下
5.点击工具栏“runner”,在弹出界面中选择到test文件夹下我们保存的地址,点击“Run Test”按钮。
6.这里会出现一个错误,提示是输入栏不能出现乱码字符
7.我们返回url输入框,将url改成原始的路径
-
重复上述操作进行测试,成功!
(刚刚的操作相当基础,我们只要统一将数据导入,我们就可对整个collection进行一次性测试啦,想想就很开心。然而我们是有理想的程序员,做到这样我们是不满意的,下面我们开始进阶的玩法。)
9.修改成功以后,我们再去脚本中校验返回数据的脚本
10.如果是单个测试,我们可以直接点击页面上蓝色的“send”按钮,结果会在下面的 “TestResults”中显示出来。
11.不过既然是自动化测试,我们还是回到runner界面,点击“Retry”按钮,可以一次进行collection中某个文件夹下所有的测试,结果如下
12.我们还可以发送请求去验证数据库的修改结果
13.结果跑通啦!在这里不知道大家有没有发现,我们的测试的命名最好能直接表达我们的测试意图。
14.测试结束了?还没有!你还可以点下面这个按钮把测试的报告导出
15.选择你想保存的位置,大功告成!
Ps:上面的测试过程和语法都比较简单,第一次使用还不是很熟练,大家有什么简单的语法可以简化的请来告诉我另外有什么说的不对的地方欢迎指正哦