postman参数化 接口响应数据获取符合条件的内容参数化给后面的接口使用
一:主要内容
- 从响应结果中找到满足条件的key,获取其value,参数化给后面的接口使用
二:参数化获取想要的value值,传给后面的接口使用
有时我们获取的响应数据,需要的那个字段可能在一个数组里面,需要我们提取满足条件的该字段来拿到对应的值,如:
下面一段响应数据,我想拿到员工名称为:自动化初始化员工,这个人的id
{
"result": {
"totalPages": 1,
"totalElements": 3,
"pageNumber": 0,
"pageSize": 100,
"pageOfElements": 3,
"content": [
{
"id": "1bebc5f9a0534be6828e9a1e2918ea36",
"name": "自动化初始化员工",
"mobilePhone": "13390897802",
"hasAccount": true,
"type": "EMPLOYEE",
"createDateTime": "2019-04-15 15:49:08"
},
{
"id": "0622715f7f90495a93711f0dec7e9e6d",
"name": "员工1",
"mobilePhone": "19989789878",
"hasAccount": true,
"type": "EMPLOYEE",
"createDateTime": "2019-02-25 15:09:37"
},
{
"id": "500f624e87654f4495603a421ad9c2e8",
"name": "员工2",
"mobilePhone": "18499991111",
"hasAccount": true,
"type": "STORE_OWNER",
"createDateTime": "2019-01-22 17:58:40"
}
],
"hasContent": true,
"isFirst": true,
"isLast": true
},
"code": 0,
"message": "OK"
}
实现脚本如下:
// 把responseBody转为json字符串
var data =JSON.parse(responseBody); // 获取employeeId即员工id
var employeeId="";
for(var i=0;i<data.result.content.length;i++){
if(data.result.content[i].name=="自动化初始化员工"){
employeeId=data.result.content[i].id;
console.log(employeeId);
break;
}
}
// 设置环境变量employeeId,即员工id,供后面的接口引用
pm.environment.set("employeeId",employeeId);
即tests脚本如图所示:

该接口运行后我们可以看到控制台中打印的我们拿到的员工id为:1bebc5f9a0534be6828e9a1e2918ea36,
正是我们需要的员工id,即获取正确,其他需要该值的接口都可以使用{{employeeId}}或pm.environment.get("employeeId")的方式去获取

postman参数化 接口响应数据获取符合条件的内容参数化给后面的接口使用的更多相关文章
- linux-统计文本中符合条件的内容
1, 单个条件匹配, cat results.log | grep 'status=402' 2, 多个条件匹配 1), 2个条件都要满足 cat results.log | grep "s ...
- 在List中删除符合条件的内容
objDAList.RemoveAll(s => s.daCID == "20170725152407CD");
- [VBA]定向提取符合条件的内容
要求:若A列满足值为c,则将b列对应的内容背景色调为红色,并提取出来: 代码如下: Sub naqu()Dim i As IntegerFor i = 2 To Range("a65536& ...
- Jmeter—添加断言 判断接口响应数据是否符合预期
发出请求之后,通过添加断言可以判断响应数据是否是我们的预期结果. 1 在Jmeter中发送一个状态返回200的http请求(参数故意输入错误).结果肯定是不是返回200啦. 但结果树中http请求的图 ...
- Java接口响应超时监控
为什么要监控 服务化接口是提供服务的,接口正确性.稳定性是最最重要的,在保证正确的同时需要尽量提高接口响应时间. 有的团队会有专门的工具来对系统响应时间.吞吐量做监控,但如果团队没有这种"待 ...
- 使用 yapi-to-typescript 生成接口响应数据的 TS 类型声明
TS 是越写越爽,但是很不爽的是接口响应数据一堆,每次要去手写很麻烦. 最近正好后端接口文档从一个垃圾工具切换到了 Yapi,然后去搜了下可以通过接口文档自动生成 TS 类型声明,就自己搞了下,还是很 ...
- WebApi接口 - 响应输出xml和json
格式化数据这东西,主要看需要的运用场景,今天和大家分享的是webapi格式化数据,这里面的例子主要是输出json和xml的格式数据,测试用例很接近实际常用情况:希望大家喜欢,也希望各位多多扫码支持和点 ...
- JavaScript利用replace更改所有符合条件字符
利用replace替换字符串时,在正常使用情况下默认只能更改匹配到的第一个字符 var a=new String("fffffddd"); console.log(a.replac ...
- 遍历List集合,删除符合条件的元素
List集合的遍历有三种方式:增强for循环,普通for循环,Iterator迭代器遍历 如果只是对集合进行遍历,以上三种循环都可正常遍历: (1)增强For循环遍历List集合 List<St ...
随机推荐
- java基础-day22
第11天 多线程 今日内容介绍 u 多线程概述 u 线程实现 u 多线程安全问题产生 & 解决方案 第1章 多线程概述 学习多线程之前,我们先要了解几个关于多线程有关的概念. A ...
- VS SVN
AnkhSVN - Subversion Support for Visual Studio 直接包管理中就可以安装 VS2015和SVN合作 Visual Studio 添加SVN插件 Ank ...
- HBase最佳实践(好文推荐)
HBase最佳实践-写性能优化策略 HBase最佳实践-管好你的操作系统 HBase最佳实践之列族设计优化 [大数据]HBase最佳实践 – 集群规划
- hdu 4920
http://acm.hdu.edu.cn/showproblem.php?pid=4920 给定两个n阶矩阵,求矩阵相乘后模3. 直接搞肯定会超时 特殊处理1和2的情况 实际上是水过的..... 貌 ...
- ListView 指定显示最后一行,scrollView显示最底部
实现方式: 一. mListView.setSelection(adapter.getCount()-1); 二.在ListView的xml添加以下属性: android:stackFromBotto ...
- 查找对端mac地址
1.ping对端mac: 2.arp命令查找:
- [smarty] smarty 模板文件中进行字符串与变量的拼接
// smarty 模板引擎 $arr_tribeLabelList["`$tribe_id`_"]
- 动态设置和访问cxgrid列的Properties
动态设置和访问cxgrid列的Properties 设置: cxGrid1DBTableView1Column.PropertiesClass = TcxTextEditPropertie ...
- [转载]DevOps发展的四个重要阶段
DevOps是敏捷开发的延续,它将敏捷的精神延伸至IT运营(IT Operation)阶段.敏捷开发的主要目的是响应变化,快速交付价值.以2001年的敏捷宣言发布这个里程碑为起点,开始几年内企业主要在 ...
- WPF放大镜效果
在做WPF项目中,不止两个项目需要有放大镜功能. 第一个项目是一个手术室的远程示教系统,主要是为了方便专家演示病症时,可以放大图片上的某些部位. 第二个项目是一个工厂的MES项目,其中有个功能是质量预 ...