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 ...
随机推荐
- POJ3046--Ant Counting(动态规划)
Bessie was poking around the ant hill one day watching the ants march to and fro while gathering foo ...
- 2016-2017-2 20155326实验二《Java面向对象程序设计》实验报告
2016-2017-2 20155326实验二<Java面向对象程序设计>实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉 ...
- noip第16课作业
1. 猴子吃桃 [问题描述] 猴子第一天摘了若干个桃子,当即吃了一半,还不解馋,又多吃了一个:第二天,吃剩下的桃子的一半,还不过瘾,又多吃了一个:以后每天都吃前一天剩下的一半多一个,到第10天想再吃时 ...
- android 发送url带中文出现乱码怎么解决
上传的时候参数中带中文的时候发送参数的时候就有可能出现乱码,这种情况怎么解决呢,就是设置url的格式为utf-8 httpRequest.setEntity(new UrlEncodedFormEnt ...
- Java 学习的几个基础实验(Learn by doing)
0 引子 不少情况下,学生连开发环境都搭建不好,有了实验楼,这个问题基本就解决了. 实验楼是国内首家IT在线实训平台,拥有最丰富的计算机在线实验课,而且全部免费.创业团队对师生的服务非常贴心细致. 1 ...
- 集成算法(chapter 7 - Hands on machine learning with scikit learn and tensorflow)
Voting classifier 多种分类器分别训练,然后分别对输入(新数据)预测/分类,各个分类器的结果视为投票,投出最终结果: 训练: 投票: 为什么三个臭皮匠顶一个诸葛亮.通过大数定律直观地解 ...
- C# 动态创建数据库三(MySQL)
前面有说明使用EF动态新建数据库与表,数据库使用的是SQL SERVER2008的,在使用MYSQL的时候还是有所不同 一.添加 EntityFramework.dll ,System.Data.En ...
- Duolingo 提高用户留存率的6个手段
翻译 :马玉洁 欢迎访问网易云社区,了解更多网易技术产品运营经验. 如果你用过"Duolingo"(Duolingo)这个语言教育应用程序,你就会知道它就像一款游戏. 这当然不是巧 ...
- 面向对象——单例模式,五种方式
单例模式:多次实例化的结果指向同一个实例 实现方式 一.使用类方法(调用创新对象,函数返回原定对象) import settings class Mysql: __instance = None de ...
- 栈(链式栈)----C语言
链式栈:就是一种操作受限的单向链表,对单向链表还不了解的可先看一下之前的一篇关于单向链表的随笔,链表(单向链表的建立.删除.插入.打印),理解了单向链表后再来看链式栈就比较轻松了 链式栈的操作一般含有 ...