• 在用jmeter做接口测试时,我们经常会遇到,一个接口返回一个json串,在这个json串中,某个节点的值是一个列表,而且这个列表的长度是动态变化的。如:

     

    获取用户列表,用户信息是个列表,类似的接口,在企业中非常常见,如果我们在接口中没有传递翻页参数时,这个列表的长度往往都是不固定的,随时变化的。

  • 如果你只想获取列表中已知索引位置的某个参数值,这个很简单,用个json提取器,或者用正则提取器+指定索引号,都能如愿提取出来。
  • 哪如果想要提取列表最后一个索引位置某个参数的值,怎么办呢?是不是,就用个‘-1’的索引号,就能解决呢?
    • 你是不是,也有这样一个问题?你是不是也是这样想的呢?
    • 然后......
    • 然后你干嘛了?你发现你用‘-1’实现不了,你又去百度,百度告诉你,用Beanshell,写一堆你不知所云的‘天书’(java代码)。你期望美梦成真(因为问题很简单,杀鸡已经用上了牛刀了),但是,理想很美好,现实很骨干,你的辛苦付出并没有获得应有的回报。老天啊,你不是耍我吧,一个这么简单的问题,你搞了我一整天啦,来个人,帮我把这些写代码忽悠人的都 ‘X’了吧(此时,你是不是怨声载道)。
    • 天涯何处不相逢,都是沦落人啊!
    • 只是,我可能‘山重水复疑无路,柳暗花明又一村’,发现了个‘隧道’
  • 正则+关联函数 获得动态列表最后一个索引位置的某个参数值
    • 先用正则提取器出所有的预期参数的值(如:我想提取data列表中所有id的值)

       
    • 此时,在调试取样器中,我们将看到如图:

       
    • 注意图中重点,有一个 ‘id_matchNr'=***,这是什么呢?这个就是匹配结果总数量,也就是说,这个值,告诉了我们列表的数量(前提是,正则表达式没有错)。看到了列表总长度,想到了什么?是不是直接用这个值作为列表索引,就能获得最后一个参数值了! bingo,思路有了,开干!
    • 关联函数__v, ${__V(id_${id_matchNr})} ${id_matchNr}是得到列表最大值,用一个关联函数,就得到列表最后一个的参数值。 注意: 列子中的’id' 是我们正则提取器中的存储“引用名称”
    • 验证:把关联函数${__V(id_${id_matchNr})},放入你需要的地方,运行后,查看该参数的值,再把列表拷贝出来,搜索看参数值是不是最后一个。
  • 到此,我们就完成了列表最后一个值的提取和使用及验证。

【柠檬班】jmeter 不写代码,秒秒钟提取动态列表最后一个值的更多相关文章

  1. JMeter接口测试-提取动态列表最后一个值的两种方法

    前言 在用JMeter做接口测试时,我们经常会遇到,一个接口返回一个json串,在这个json串中,某个节点的值是一个列表,而且这个列表的长度是动态变化的.今天我们来学习两种提取动态列表最后一个值的两 ...

  2. Jmeter 后置处理器JSON Extractor 提取json的多个值

  3. 【柠檬班】史上最简单的Jmeter跨线程组取参数值的两种办法(不写代码)【原创】

    如果你工作中已经在用jmeter做接口测试,或性能测试了,你可能会遇到一个麻烦,哪就是jmeter的变量值不能跨线程组传递.   看,官方就已经给出了解释.这个不是jmeter的缺陷,这是jmeter ...

  4. JMeter脚本java代码String数组要写成String[] args,不能写成String args[],否则报错。

    JMeter脚本java代码String数组中括号要写在类型关键字后面,不能写在变量名后面.

  5. Android 打造炫目的圆形菜单 秒秒钟高仿建行圆形菜单

    原文:Android 打造炫目的圆形菜单 秒秒钟高仿建行圆形菜单 转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/43131133, ...

  6. 请注意写代码的习惯与态度(Java)

    注: 以下内容引自http://blog.csdn.net/xtayfjpk/article/details/52136686 请注意写代码的习惯与态度(Java) 原创 2016年08月06日 16 ...

  7. jmeter测试java代码

    有时候总是要写代码的,不得不说你也得会,这不往下看 java请求了,就的写代码,那么先来实现一个类, package com.company.jemeters; public class Hello ...

  8. 秒秒钟破解eval加密

    前言  准确的说eval处理过的代码应该叫做压缩代码,不过效果上算是加密过了一样!很多小伙伴不想直接让别人看到自己的js代码往往就会采取这样的处理措施.不过,其实这样的方法只能防御那些小白.对于真正的 ...

  9. 云开发中的战斗机 Laf,让你像写博客一样写代码

    各位云原生搬砖师 and PPT 架构师,你们有没有想过像写文章一样方便地写代码呢? 怎样才能像写文章一样写代码? 理想的需求应该是可以在线编写.调试函数,不用重启服务,随时随地在 Web 上查看函数 ...

随机推荐

  1. HDU 4289 Control 最小割

    Control 题意:有一个犯罪集团要贩卖大规模杀伤武器,从s城运输到t城,现在你是一个特殊部门的长官,可以在城市中布置眼线,但是布施眼线需要花钱,现在问至少要花费多少能使得你及时阻止他们的运输. 题 ...

  2. lightoj 1095 - Arrange the Numbers(dp+组合数)

    题目链接:http://www.lightoj.com/volume_showproblem.php?problem=1095 题解:其实是一道简单的组合数只要推导一下错排就行了.在这里就推导一下错排 ...

  3. poj 1797Heavy Transportation(dijkstra变形)

    题目链接:http://poj.org/problem?id=1797 题意:有n个城市,m条道路,在每条道路上有一个承载量,现在要求从1到n城市最大承载量,而最大承载量就是从城市1到城市n所有通路上 ...

  4. CM & CDH 基本概念

    什么是 CDH Hadoop 是开源项目,所以很多公司在这个基础上进行商业化,不收费的 Hadoop 主要有三个: Apache,最原始的版本,所有发行版均基于这个版本进行 Cloudear,全称 C ...

  5. Java中ElasticSearch的删除示例

    public class DeleteElasticAPI { private static RestClient restClient; static { restClient=RestClient ...

  6. s-s-r + 锐-速

    环境:centos 7 1. wget --no-check-certificate https://freed.ga/github/shadowsocksR.sh; bash shadowsocks ...

  7. iptables的删除命令中的相关问题

    最近在做一个VPN中间件的配置工作,在配置iptables的时候,当用户想删除EIP(即释放当前连接),发现使用iptables的相关命令会提示错误. iptables: Bad rule (does ...

  8. Hadoop常见重要命令行操作及命令作用

    关于Hadoop [root@master ~]# hadoop --help Usage: hadoop [--config confdir] COMMANDwhere COMMAND is one ...

  9. struts2表单提单细节处理

    1. 上传文件 大部分项目避免不了要上传文件. struts2提供了封闭的上传文件的入口, 网络上也存在大量的插件用于网页表单中上传文件. 由于自己习惯用SSH框架, 所以介绍一下struts2中文件 ...

  10. jsp作用域总结

    我们在定义每一个变量,每一个属性的时候,都会考虑这个变量.属性的作用范围,也就是作用域. JSP的四大作用域 作用域对象 作用域范围 page 只在当前页面有效 request 一次请求的生命周期内有 ...