postman

使用记录备份:
Postman 高级用法指南
自动化接口测试之Postman
官方文档

在这里插入图片描述

注:request,floder,collection三者使用pre-request script和tests脚本的顺序
在这里插入图片描述

其他:

1,实现登录状态,在postman的headers里添加cookie值(postmna中的登录状态会和浏览器的同步,如果该用户信息在浏览器中退出登录,则在postman中也会成为未登录状态,如果重新登录,则需要重新更换cookie值)

2.非法请求来源,可能情况:无referer,cookie,User-Agent等参数

3.设置环境变量,不能批量执行,设置成全局变量才能批量执行—pm.globals.set(“variable_key”, “variable_value”);

4.在test script里 获取html中的参数值???
解决:把XML的body转换成JSON对象:var jsonData = xml2Json(responseBody)
–转换成json之后使用什么方法取值?

5.请求参数里有json串时,也可以使用参数变量,模式:{{变量名}}

6.如何在test script中使用变量??
解决:tests[“测试名称”]= jsonData.data.xhb.list[0][“返回的某个字段”]>pm.environment.get(“变量名”);
表达式含义:获取的值大于变量值

  1. 日志
    console.log(jsonData.status);----再在view->show postman console打开控制台进行脚本调试
    最好是在collections的测试脚本中把日志加上一次性搞定,可以避免重复添加日志

8.更改接口执行顺序
postman.setNextRequest(“request_name”) 实现,可以很方便地在 Collection 中控制请求的执行路径。request_name指的是postman中的自定义接口名字,如:postman.setNextRequest("/cashier/aj_pay(password_pay)_axjh");中的接口就是自己自定义的名字,并不是真正的url地址
在这里插入图片描述
在这里插入图片描述

postman.setNextRequest(null),停止循环执行
注意:在同一个collection中的不同文件夹中在postman.setNextRequest(“request_name”)中添加的接口名字不能一样,如果一样就会直接跳到最后一个接口执行

9.动态变量函数:在沙箱中不能使用动态变量,也就是不能再tests script中使用
{{KaTeX parse error: Expected 'EOF', got '}' at position 10: timestamp}̲}: 添加当前时间戳 {{randomInt}}: 添加一个0到1000的随机整数

10.postman全局函数:
require方法 pm对象 pm.sendRequest方法??

11.使用外部文件:—先保存一个有data1变量值的csv文件(这个文件中可以有其他参数变量)
在request中写如一个变量{{data1}},
在test script中写入:var data=postman.getGlobalVariable(“data1”); tests[data]=true;
批量run时,添加csv文件,填写迭代次数,便可执行
注:如果在环境变量中有自定义data1变量时,在批量执行时需要把环境变量里的data1取消选择,就会自动读取csv文件中的变量

12.JSON 字符串和JavaScript 值转换
JSON.stringify() 方法用于将 JavaScript 值转换为 JSON 字符串
JSON.parse()是将JSON 字符串转换为 JavaScript 对象

13.在test中可以使用条件语句来达到目的
if(条件){ 执行的代码 }
else(条件){ 执行的代码 }

14.在写js代码时,如果时等于则需要===三个等号来表示

15.时间控制使用函数,setTimeout(1000毫秒等于1秒)

setTimeout(function(){//停止1秒再执行
    postman.setNextRequest("/cashier/aj_query_result_axjh");},1000)

test script:
var jsonData = JSON.parse(responseBody); //
tests[“请求成功”] = jsonData[“errmsg”]== “ok”;
pm.globals.set(“cardId”,jsonData.data.payMethod.QPAY[0].cardId);//获取第一张银行卡的id(json数组嵌套时的取值)
Testing Sandbox
postman的测试是运行在沙箱环境,是与app独立的

15.postman实现文件上传下载
下载:直接选择“send and download”请求即可
在这里插入图片描述
上传:body中,选择form_data下可以选择文件类型上传
在这里插入图片描述

使用:
1.直接添加header,避免重复添加

2.authentication 理解??
3.使用Interceptor extension扩展工具实现抓包,也可以抓客户端的包,使用postman作为代理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值