jmeter
文章平均质量分 68
慕城南风
这个作者很懒,什么都没留下…
展开
-
Jmeter内置变量 vars 和props的使用详解
JMeter是一个功能强大的负载测试工具,它提供了许多有用的内置变量来支持测试过程。其中最常用的变量是 vars 和 props。原创 2024-02-21 10:26:55 · 2193 阅读 · 0 评论 -
JMeter性能测试之运行内存设置
JMeter性能测试之运行内存设置原创 2022-10-25 19:58:18 · 3412 阅读 · 1 评论 -
Jmeter之timeshift()函数获取当前时间进行加减
__TimeShift(格式,日期,移位,语言环境,变量):可对日期进行移位加减操作原创 2022-10-25 19:52:49 · 1912 阅读 · 1 评论 -
JMeter性能测试之使用CSV文件参数化
JMeterCSV参数化原创 2022-07-25 14:32:14 · 1862 阅读 · 0 评论 -
Jmeter性能测试之使用存储响应内容到文件监听器
在使用Jmeter做性能测试时,有些时候需要将接口返回信息存储到文件中。最开始实现的方式是写一个beanShell脚本实现。现在Jmeter提供了将响应内容保存到文件的监听器不再需要手写脚本,使用非常简单方便。这篇文章介绍这个监听组件使用方法。...原创 2022-07-25 12:04:20 · 499 阅读 · 0 评论 -
Jmeter性能测试之将每次接口请求的结果保存到文件中
在测试中,最好能够将测试时的接口返回数据保存下来,供以后需要的时候查看。原创 2022-07-25 11:44:25 · 1681 阅读 · 0 评论 -
Jmeter性能测试之命令行执行和生成测试报告
Jmeter有两种运行方式:一种是上面采用的界面模式(GUI)形式,会占用java虚拟机的资源;另一种是命令行模式(non-GUI)执行,这样节约资源,尤其是在持续集成时基本都是采用non-GUI模式。作者:樱井咲夜链接:https://www.jianshu.com/p/fa38e8ba51ce来源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。...原创 2022-07-25 11:27:37 · 1276 阅读 · 0 评论 -
Jmeter之控制线程执行到某个结果时退出执行(第二种解决方案)
业务背景触发测试用例,大约需要执行10分钟 查询执行的commitId的测试用例的执行结果 如果通过了则直接停止测试用例,或beanshell 异常也要停止,否则获取不到结果,无限执行也是没有意义的,否则继续循环执行(设置最大的重试次数)延迟执行request如果是1和2中间需要停止10分钟,可以在 1和2中间新增一个request-3,并且配置timer的时长 定时器是在每个sampler(采样器)之前执行的,而不是之后。不管这个定时器的位置放在sampler之后,还是之下,它都在sa原创 2022-03-18 16:37:37 · 1076 阅读 · 0 评论 -
Jmeter之控制线程执行到某个结果时退出执行
目的今天做压力测试时,涉及到一个场景,需要先执行A场景,在执行到status=2时,在执行B场景,然后停止运行。遇到的困难status开始为1,需要一段时间后变为2,且不确定需要等待多久才会变为2。最初想到的是,通过“Runtime Controller”+“如果(if)控制器”控制HTTP请求执行一段时间,当status=2时,执行if控制器的HTTP请求。但是Runtime Controller中时间写长了后就算执行了if控制器里的HTTP请求,Runtime Controller下的H原创 2022-03-18 16:33:24 · 2166 阅读 · 1 评论 -
Jmeter性能测试之事务控制器的使用
作用:可以用于测试执行嵌套测试元素所花费的总时间,即相当于用户进行一系列操作的测试,只有整个事务控制器定义的事务成功,才算成功。结构如下:Generate Parent Sample:如果选中,则生成样本作为其他样本的父项,否则样本将作为独立样本生成。使用根据自己需求使用。没有选中的效果:勾选的效果:Include duration of timer and pre-post processors in generated sample:是否...原创 2022-03-05 11:52:34 · 1457 阅读 · 0 评论 -
Jmeter性能测试之随机控制器和随机顺序控制器的使用
随机控制器,在此控制器下的请求会随机选择如上图脚本,随机控制下添加三个请求,控制器外一个请求,执行一下可见,随机控制器下的请求是随机的随机顺序控制器随机顺序控制器下添加三个请求,线程数设置 为4,执行一下发现是控制下的所有请求都执行,只是顺序是随机的。有兴趣可以关注我的微信公众号“自动化测试全栈”,微信号:QAlife,学习更多自动化测试技术。也可加入我们的自动化测试技术交流群,QQ群号码:301079813;Jmeter/Loadrunner性能原创 2022-03-05 11:47:09 · 910 阅读 · 0 评论 -
Jmeter性能测试之Switch控制器使用
该控制器可以控制他里面的请求根据某些规则在不同num时选择控制器下的对应数字位的不同sampler。一般可以用在模拟多线程同时操作不同请求的测试场景。这个switch value里填写的应该是数字0,1,2,3,4……对应的就是齐下的每个请求的顺序(注意点:第一个是0),这个num可以通过计数器,counter函数,random函数来自动生成(一般常用random函数)。也可以通过CSV参数化文件来生成,切记数字数量不能大于请求数,但是这里有个特别的地方,0也是第一个,3也是第一个请求。所以要设..原创 2022-03-05 11:45:36 · 839 阅读 · 0 评论 -
Jmeter性能测试之ForEach控制器的使用
本文主要介绍下ForEach控制器的基本用法~ForEach控制器一般和用户自定义变量一起使用,从用户自定义变量中读取一系列相关的变量。该控制器下的采样器或控制器都会被执行一次或多次,遍历读取不同的变量值。下面用两个简单的例子介绍下用法:例1:ForEach控制器结合用户自定义变量使用,遍历用户自定义变量(1)添加配置元件-用户自定义变量如下图:(2)设置ForEach控制器如下图:名称:字面意思,ForEach Controller的名称注释:字面意思输入变量前缀原创 2022-03-05 11:41:30 · 1225 阅读 · 0 评论 -
Jmeter性能测试之后置处理器Json提取器的使用
一、json提取器设置多个变量获取多个数据1、先添加好登录请求,运行下查看登录的响应结果调整下查看结果方式,可较清晰看到响应结果中的id、token信息JSON path表达式怎么写?例如我要获取id,可写$.data.id,$表示根元素,然后一级级属性往下去找,先找到data,再往下子节点找到id;也可写$..id,直接从根元素去递归查找到id;获取token同理。详细的可查看这篇文章Python 使用 JsonPath 完成接口自动化测试中参数关联和数据验证 - 测试派。.原创 2021-12-22 21:04:57 · 1109 阅读 · 0 评论 -
Jmeter性能测试之请求MXL格式报文
一、关于Webservice的一些基础知识参考文章Webservice学习总结总结:WebService是一种跨编程语言和跨操作系统平台的远程调用技术。使用webservice技术的接口就可以被调用。 wsdl就是描述webservice接口的xml格式文件,描述服务里有些啥怎么用。 SOAP协议 = HTTP协议 + XML数据格式。二、soapui发起POST请求参考SoapUI简介和入门实例解析新建项目file>new soap project,填写项目名称以及wsd..原创 2021-12-22 21:02:25 · 3623 阅读 · 0 评论 -
Jmeter性能测试之while控制器的使用
1、添加While Controller右键线程组->添加->逻辑控制器->响应断言2、控制面板介绍添加后,面板如下while controller会一直运行,直到条件(condition)为falseCondition的可能值如下:为空(不输入任何值)-- 直到某次sample执行失败才会退出循环 LAST – 直到最后一个sample请求失败,才会退出循环例:如上,执行第三个,即最后一个sample失败了,才自动退出循环其他–条件等同于字符...原创 2021-12-22 20:56:24 · 2021 阅读 · 0 评论 -
Jmeter性能测试之if控制器的使用
使用if控制器有两种方式:1.不勾选“interpret condition as variable expression”直接输入我们需要判断的表达式即可,判断表达式为真时,执行if控制器下的请求,例如“1!=2”,则一定会执行下面的http请求2.勾选“interpret condition as variable expression”这时expression中不能直接填写条件表达式,需要借助函数将条件表达式计算为true/false,可以借助的函数有_jexl3和_groovy,例如:.原创 2021-12-22 20:49:20 · 4360 阅读 · 0 评论 -
Jmeter性能测试之JDBC Request连接数据库
这个Sampler可以向数据库发送一个jdbc请求(sql语句),并获取返回的数据库数据进行操作。它经常需要和JDBC Connection Configuration配置原件(配置数据库连接的相关属性,如连接名、密码等)一起使用。一、准备工作1、本文使用的是mysql数据库进行测试,数据库的用户名为root(你自己的用户名),用户名密码为*********(你自己的密码)2、数据库中有表:test,表的数据结构如下: 表中数据如下:select * from test3原创 2021-12-22 20:46:50 · 350 阅读 · 0 评论 -
Apache Kafka - How to Load Test with JMeter
In this article, we are going to look at how to load test Apache Kafka, a distributed streaming platform, by usingApache JMeter™. First of all, let us study what Kafka is and give a few definitions we will need for further work.A Brief Overview of Apa.转载 2021-12-22 20:26:58 · 172 阅读 · 0 评论 -
Jmeter之创建Kafka生产者和消费者进行性能测试
最近消息队列要换成Kafka,作为一个测试人员,应工作要求,需要对Kafka进行性能测试,那么开干吧,了解它,测试它。在这里把自己学习和使用的一些经验记录在本文中,研究如何去使用Apache JMeter测试Kafka。首先,先来了解一下什么是Kafka。1. A Brief Overview of Apache Kafka在一个大型的分布式系统中,通常有很多服务生成不同的事件:日志、监视数据、可疑用户操作等等。在Kafka中,这些被称为生产者Producer。另一方面,有些服务需要生成的数据,这原创 2021-12-22 20:22:16 · 2667 阅读 · 0 评论 -
Jmeter之Beanshell使用(二)Java处理JSON块
【环境】 ①Jmeter版本:3.2,JDK:1.8 ②前置条件:将json.jar包置于..\apache-jmeter-3.2\lib\下,并将该jar包添加到测试计划的Library中;否则会报:Typed variable declaration : Class: JSONObject not found in namespace的错误; ③处理器:Beanshell处理器,import org.json.*;(一般习惯使用到什么import什么,如:import org.json原创 2021-11-10 14:44:04 · 1733 阅读 · 0 评论 -
Jmeter之Bean shell使用(一)
1. 什么是Bean ShellBeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanShell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,具有对象脚本语言特性,非常精简的解释器jar文件大小为175k。 BeanShell执行标准Java语句和表达式,另外包括一些脚本命令和语法。官网:http://www.BeanShell.org/2.原创 2021-11-10 14:39:42 · 968 阅读 · 0 评论 -
在Mac下安装和卸载JDK
在Mac下启动Jmeter的时候终端报了个错:WARNING: package sun.awt.X11 not in java.desktop在终端输入java -version,查看自己的jdk版本,发现jdk版本是1.6的而我下载的Jmeter是5.4,官方要求JDK版本8以上那么我就需要安装1.8+的JDK。/usr/libexec/java_home -V # 列出所有JDK版本的JAVA_HOME使用以上命令列出我当前机器安装的JDK因此需要先卸载掉以上的J.原创 2021-09-14 16:50:26 · 5160 阅读 · 1 评论 -
Jmeter连接mysql报Cannot create PoolableConnectionFactory (Communications link failureThe last packet
使用Jmeter连接mysql报错问题现象:Cannot create PoolableConnectionFactory (Communications link failureThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server在网上查了半天,原来是版本不对导致的,我使用的mysq原创 2021-08-06 19:13:53 · 4159 阅读 · 1 评论 -
Jmeter连接mysql(一)
JMeter连接数据库可以进行参数化,另一个作用可以直接对数据库进行压测。连接数据库和jmeter,步骤如下图所示:1. 首先第一步要导入mysql驱动包,放到电脑上随意一个目录下。下载地址:https://dev.mysql.com/downloads/connector/j/然后再在jmeter上点击打开导入mysql驱动包,如下图所示:添加JDBC Connection Configuration设置连接Database URL: jdbc:mysql:// 数原创 2021-08-06 19:02:12 · 378 阅读 · 0 评论 -
Jmeter响应结果unicode转成中文显示
在jmeter工具的使用中,不管是测试接口还是调试性能时,查看结果树必不可少,然而在查看响应数据时,其中的中文经常以Unicode的编码形式显示,如图1。这样不能直接查看到对应的中文是否为期望的结果,很不方便。(样例请求为http://ip.taobao.com/service/getIpInfo.php?ip=114.114.114.114)我找到一个曲线救国的方法,供大家参考。得到结果,如图2。(样例请求为http://ip.taobao.com/servic...原创 2021-05-11 20:14:05 · 554 阅读 · 0 评论 -
Jmeter响应内容显示乱码问题的解决办法
Jmeter在访问接口的时候,响应内容如果有中文可能会显示乱码,原因应该是响应页面没有做编码处理,jmeter默认按照ISO-8859-1编码格式进行解析。下面把解决步骤列一下:现象:jmeter访问本地文件,文件内容有中文,jmeter返回内容显示乱码:方法一:改配置文件进入Jmeter的bin目录下,找到jmeter.properties文件,以文本形式打开本例目录:D:\apache-jmeter-4.0\bin找到sampleresult.defa...原创 2021-05-11 20:07:41 · 1294 阅读 · 0 评论 -
Jmeter启动错误及解决方案
最近使用Jmeter做压力测试时,遇到了几个启动错误,如下(mac环境)第一个:Unrecognized VM option 'MaxMetaspaceSize=256m'原先以为是Jmeter的参数配置出问题,MaxMetaspaceSize设置不正确,在修改了Jmeter配置文件后发现依然错误,后找到问题原因:维护老项目使用了JDK7版本,使用的Jmeter是通过brew install jmeter命令安装的,默认最高版本,也就是5.0,而5.0版本是建立在JDK8或JDK9的环境下运行的转载 2021-05-11 16:57:09 · 1967 阅读 · 0 评论 -
在Mac下安装JMeter
其实不论操作系统是Windows、Unix(如Mac OS)、Linux(如Ubuntu)等,JMeter所需要的基础环境配置都是类似的,本文介绍JMeter for MAC的安装与环境配置。JMeter安装步骤如下:安装JDK 安装JMeter1、选择版本截止2018年10月,JMeter的最新版本是5.0,JMeter 5.0需要Java 8、Java 9,所以我们最终选择的版本是:Java 8,下载地址,历史版本下载地址 JMeter 5.0,下载地址,历史版本下载地址2、安装原创 2021-05-11 16:55:25 · 1332 阅读 · 0 评论 -
Jmeter自定义函数和引入外部文件的几种方法
1.Bean Shell简介BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanShell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,具有对象脚本语言特性,非常精简的解释器。 BeanShell可执行标准Java语句和表达式,另外包...原创 2020-03-20 18:27:47 · 1438 阅读 · 0 评论 -
Jmeter调用自定义jar包
一.场景在测试过程中经常需要调用第三方jar包来生成测试数据,或者使用java工具类来实现业务场景,普遍的做法是手动调用jar包,再把这些值赋给jmeter中的某个参数,以满足业务测试需求目的,jmete有调用jar包的功能,可以利用这个实现对jar包的嵌入调用。二.自定义jar包用Eclipse或者IntelliJIDEA, 看个人喜好, IntelliJIDEA 貌似更胜一...原创 2020-03-20 18:12:44 · 1932 阅读 · 0 评论