Jmeter由浅入深
JJJims
这个作者很懒,什么都没留下…
展开
-
Jmeter(11)打印时间戳
Jmeter中提供了一种函数,可以打印时间戳,如下图 年: yyyy 月:MM 日:dd 时: HH 分: mm 秒:ss关于时间戳的格式,可以自由组合定义,这里我写成这样 yyyy-MM-dd HH:mm:ss生成的函数是这样的:${__time(yyyy-MM-dd HH:mm:ss,)}现在将这个函数写入下一个接口执行,查看结果树,可以看到结果中,将当前时间打印出来了哦~此函数适用于一些需要填写时间参数的接口,用于实时获取当前时间。时间参数如果写死的话,过段时间接口就会报错啦~转载 2020-06-30 17:40:56 · 354 阅读 · 0 评论 -
Jmeter(10)针对响应信息不明确的接口做关联
1:做接口关联的时候,发现接口响应没有可以利用的信息.如下图只返回了一个成功的标识,这样的接口如何与之关联?通过抓包观察后续的修改功能,发现需要传入一个id和一个title。但是前面的接口没有返回,怎么办?于是我想到了从数据库去读取数据。但是通过jdbc查询数据库也需要传入一个参数呀,这里明明什么都没有。。。没关系,没参数我们可以人为的给它一个!首先我在循环控制器里加入了一个用户变量,用来定义新增时候传入的 必填参数 title注意,为了避免从数据库里面查询出重复数据,我这里的title设置的是转载 2020-06-30 17:36:18 · 136 阅读 · 0 评论 -
Jmeter(9)Xpath关联
在Jmeter中,除了正则表达式可以用作关联,还有一种方式也可以做关联,那就是 XPath Extractor。它是利用xpath提取出关键信息,传递变量。具体用法添加一个后置处理器-XPath Extractor实际操作以腾讯新闻网为例,我们做一次演练。对腾讯新闻网我们发起一次请求,观察结果。现在我想利用xpath把这些url都取出来,我们来写一个xpath表达式匹配一下。发现url都被匹配出来了。.//a[@class=‘linkto’]/@href 具体是什么意思呢?意思就是通过a原创 2020-06-28 17:26:52 · 291 阅读 · 0 评论 -
Jmeter(8)JsonPath表达式提取响应
我们在用jmeter做接口测试的时候,有的时候会遇到一些复杂的json响应。比如多层list嵌套时的取值一个简单的例子:$…Name:列出所有省份$…Province[0].Name 提取Province中第一个list中的Name$…[?(@.Name==‘Beijing’)] :筛选出省份名为Beijing的所有list数据$.Province[:2].population :筛选前两条数据注意:.Province[:2].population是筛选出前两条数据;.Province原创 2020-06-28 16:36:02 · 598 阅读 · 0 评论 -
Jmeter(7)正则表达式关联
jmeter中,接口自动化的关键在于参数关联。比如需要登录的接口,如何调用登录口令?一个增删改查的闭环,如何将接口参数上下传递?下面就以实际的例子来仔细说一说1:登录接口这里有一个实际的登录接口,在响应中返回了一串token,如下图那么我们在接下来的接口-经验库列表中,就必须带入这一串token,否则响应报错,如下图所示如何获取登录的口令呢?这里详细说明一下,如图所示在接下来的接口中可以将获取的token作为变量调用,变量名为${center-token},如下图观察请求头,发现传入了一原创 2020-06-11 14:40:06 · 321 阅读 · 0 评论 -
Jmeter(6)获取JDBC响应做接口关联
概述jmeter中,常常需要连接数据库去断言业务是否正确。因此jdbc数据库关联是必须掌握的核心知识。基础操作JDBC的请求,最核心的是两个jar包:mysql驱动-mysql-connector-java-5.1.13-bin.jarsqljdbc4.jar将这两个jar包放到Jmeter目录中的lib文件下,然后重启Jmeter添加线程组添加 JDBC Connection ConfigurationJDBC Connection Configuration 基本配置Var原创 2020-06-11 14:12:50 · 176 阅读 · 0 评论 -
Jmeter性能测试 - 性能指标分层监听
概述我们在进行阶梯式压力测试的时候,聚合报告生成的结果是一个汇总数据。并不会阶梯式的统计压测性能数据。这样我们就不能去对比不同阶梯压力下的性能数据变化趋势。期望假设现在一共会加载100个线程,我期望聚合报告中分别展示1-20,20-40,40-60,60-80的四个阶段的线程并发性能数据,而不是一共总体的统计数据实现jmeter本身不具备这样的工具,需要通过自定义代码去实现添加阶梯加压...转载 2020-04-17 15:36:23 · 325 阅读 · 0 评论 -
Jmeter(5)函数
JMeter提供了很多函数,如果能够熟练使用,可以为脚本带来很多方便JMeter函数是一种特殊值,可用于除测试计划外的任何组件函数调用的格式如下所示:$ {__functionName(var1,var2,var3)}其中,__functionName为函数名,括号内是函数的参数,无参数时可以不用括号,如$ {__UUID}Tips:如果参数包含逗号,那么一定要使用“\”来转义,否则...转载 2020-03-27 17:15:46 · 205 阅读 · 0 评论 -
Jmeter(4)逻辑控制器详解
循环控制器指定其子节点运行的次数,可以使用具体的数值,也可以设置为变量;勾选永远:表示一直循环下去;如果同时设置了线程组的循环次数和循环控制器的循环次数,那循环控制器的子节点运行的次数为两个数值相乘。(线程数*循环控制器数值)简单控制器这是Jmeter里最简单的一个控制器,它可以让我们组织我们的采样器和其它的逻辑控制器(分组功能),提供一个块的结构和控制,并不具有任何的逻辑控制或运行时...转载 2020-03-27 15:38:02 · 166 阅读 · 0 评论 -
Jmeter(3)配置元件
HTTP Cookie Manager用来存储浏览器产生的用户信息Clear Cookies each Iteration:每次迭代请求,清空cookies,GUI中定义的任何cookie都不会被清除。Implementation:默认HC4CookieHandlerCookie Policy:将用于管理Cookie的cookie策略HTTP Header Manager 信息头管理...转载 2020-03-27 14:17:21 · 269 阅读 · 0 评论 -
Jmeter性能测试 - jmeter 下的性能指标监听
性能指标监听概述性能测试过程中,想要得到比较靠谱的性能数据,就不得不对各种性能数据进行动态监听。jmeter中提供了很多性能数据的监听器,我们通过监听器可以来分析性能瓶颈本文以500线程的逐渐加压测试结果来描述图表(压测百度)常用监听器Transactions per Second监听动态TPS,用来分析吞吐量。其中横坐标是运行时间,纵坐标是TPS值。红色表示通过的TPS,绿色表示...原创 2020-03-27 10:33:53 · 948 阅读 · 0 评论 -
Jmeter性能测试 - 标准性能测试场景设计
前言如何设计测试场景是性能测试中比较关键的内容。在性能测试领域有几个教科书一样的场景设计方法,放之四海而皆准单业务基准测试目的单业务基准测试是在服务器没有压力的情况下,获取单笔业务的处理时间,为后续调优提供数据依托策略jmeter中设置为单个线程迭代n次(如100),取平均响应时间。一般情况下我们不需要监控硬件资源和数据库。但是,如果系统出现了TPS=1与TPS=100消耗的CPU资源...原创 2020-03-26 17:09:24 · 1483 阅读 · 0 评论 -
Jmeter性能测试 - 性能指标
概述我们在用jmeter做性能测试的时候,有一些关键性的性能指标需要去分析。但是由于开源工具本身的局限性,这些指标在工具中的命名极易对我们造成混淆,所以我们需要对这些指标逐个进行剖析。指标分析响应时间用户通过客户端向服务端发出请求的时间为:T1服务端接收到请求,处理该请求的时间为:T2服务端返回数据给客户端时间为:T3客户端接收到响应数据,处理数据呈现给用户时间为:T4响应时间系统...原创 2020-03-26 16:25:58 · 1473 阅读 · 0 评论 -
Jmeter性能测试 - 测试类型
基准测试 (Performance Benchmark Test)概念每次对外发布产品版本前必须要完成的测试类型执行固定的性能测试场景得到系统的性能测试报告与上一版本发布时的基准测试结果进行对比优化 or 恶化 ?测试目的获取系统性能基准作为参照物识别系统或环境的配置变更对性能带来的影响给系统优化前后的性能提升/下降提供参考标准观察系统的整体性能趋势与性能拐点,识别系统性...原创 2020-03-26 16:06:04 · 455 阅读 · 0 评论 -
Jmeter(2)基础元件
测试计划(Test Plan)它用来描述一个测试方案,包含与本次性能测试所有相关的功能,也就是说本次测试的所有内容是基于一个计划的。“函数测试模式”复选框,如果被选择,它会使Jmeter记录来自服务器返回的每个取样的数据线程组Threads (Users)注意:Stepping Thread Group 可用于模拟阶梯加压线程组这个是我们通常添加运行的线程,通俗的讲一个线程组,,...原创 2020-03-12 17:09:22 · 118 阅读 · 0 评论 -
Jmeter(1)环境部署
一、环境部署1、http://jmeter.apache.org/下载最新版本的JMeter,解压文件到任意目录2、安装JDK,配置环境变量3、应当避免jdk路径与jmeter路径有中文和空格,否则会有异常二、目录及面板介绍目录说明:bin: 包含启动、配置等相关命令docs: 官方本地文档目录extras: 辅助库lib: 核心库,包含Jmeter用到的各种基础库和插件li...原创 2020-03-12 16:27:39 · 160 阅读 · 0 评论