![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Jmeter
xiaoqingyu999
这个作者很懒,什么都没留下…
展开
-
JMeter学习(一)工具简单介绍
JMeter学习(一)工具简单介绍一、JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等。JMeter可用于模拟大量负载来测试一台服转载 2016-08-06 09:59:20 · 1990 阅读 · 1 评论 -
JMeter学习(二十三)关联
话说LoadRunner有的一些功能,比如:参数化、检查点、集合点、关联,Jmeter也都有这些功能,只是功能可能稍弱一些,今天就关联来讲解一下。JMeter的关联方法有两种:后置处理器-正则表达式提取器与XPath Extractor。 一、正则表达式提取器1、添加正则表达式在需要获得数据的上一个请求上右击添加一个后置处理器-->正则表达式提取器解释:(1)引用名转载 2016-08-06 15:38:42 · 3292 阅读 · 0 评论 -
JMeter学习(二十四)linux启动jmeter,执行./jmeter.sh报错解决方法
1.l-bash: ./jmeter.sh: Permission denied解决办法:jmeter.sh的执行权限改改,是权限不够chmod 777 jmeter.sh2.An error occurred:No X11 DISPLAY variable was set, but this program performed an operation which requi转载 2016-08-06 16:22:04 · 1414 阅读 · 0 评论 -
JMeter学习(二十五)HTTP属性管理器HTTP Cookie Manager、HTTP Request Defaults
Test Plan的配置元件中有一些和HTTP属性相关的元件:HTTP Cache Manager、HTTP Authorization Manager、HTTP Cookie Manager、HTTP Header Manager、HTTPRequest Defaults等,这些是什么呢?JMeter不是浏览器,因此其行为并不和浏览器完全一致。这些JMeter提供的HTTP属性管理器用于转载 2016-08-06 17:37:43 · 931 阅读 · 0 评论 -
JMeter学习(二十六)逻辑控制器
JMeter中的Logic Controller用于为Test Plan中的节点添加逻辑控制器。JMeter中的Logic Controller分为两类:一类用来控制Test Plan执行过程中节点的逻辑执行顺序,如:Loop Controller、If Controller等;另一类则与节点逻辑执行顺序无关,用于对Test Plan中的脚本进行分组、方便JMeter统计执行结果以及进行脚本的转载 2016-08-06 22:34:44 · 487 阅读 · 0 评论 -
JMeter学习(二十七)Jmeter常见问题
收集工作中JMeter遇到的各种问题 1. JMeter的工作原理是什么? 向服务器提交请求;从服务器取回请求返回的结果。 2. JMeter的作用? JMeter可以用于测试静态或者动态资源的性能(文件、Servlets、Perl脚本、java对象、数据库和查询、ftp服务器或者其他的资源)。JMeter用于模拟在服务器、网络或者其他对象上附加高负载以测试他们提供转载 2016-08-06 22:50:49 · 3262 阅读 · 1 评论 -
Jmeter模拟发送TCP/UDP/HTTP/FTP等请求包
JMeter安装UDP插件后支持发送UDP协议的请求包,官方介绍安装插件后可以用来测试DNS, NTP, TFTP, Boot servers and many-many other systems。JMeter UDP插件下载地址:http://jmeter-plugins.org/downloads/all/,下载JMeterPlugins-Extras-X.X.X.zip其中包含UDP转载 2016-08-06 22:53:13 · 5122 阅读 · 0 评论 -
JMeter学习(二十八)内存溢出解决方法
使用jmeter进行压力测试时遇到一段时间后报内存溢出outfmenmory错误,导致jmeter卡死了,先尝试在jmeter.bat中增加了JVM_ARGS="-Xmx2048m -Xms2048m -Xmn256m -XX:PermSize=128m -Xss256k",但结果运行时间增加了,但最终还是报内存溢出,百度后按照网友的建议更改了如下设置后jmeter就没有再卡了: 1、wi转载 2016-08-06 22:56:48 · 3387 阅读 · 1 评论 -
JMeter学习(二十九)使用Jmeter创建ActiveMQ JMS POINT TO POINT请求,环境搭建、请求创建、插件安装、监听服务器资源等
最近要做公司消息中间件的性能测试,第一个想到的工具就是Jmeter了,网上简单搜了一下,基本上都是WEB测试的居多,只好自己研究官方文档了。其中涉及Jmeter基本的术语或者概念,请自行参考官方文档或者google,这里主要讲JMS PTP请求是如何建立的。准备工作:安装JDK,推荐使用1.7以上版本,并设置JAVA_HOME下载Jmeter及相关插件:Jmeter下载地址点我转载 2016-08-06 23:04:00 · 717 阅读 · 0 评论 -
JMeter学习(三十)以non-gui模式进行分布式测试
由于Jmeter是一个纯JAVA的应用,用GUI模式运行压力测试时,对客户端的资源消耗是相当惊人的,所以在进行正式的压测时一定要使用non-gui模式运行,如果并发数很高或者客户端的硬件资源比较一般的话,还可以以server模式用多个client进行分布式测试。一直有朋友问我这个分布式测试要怎么用,我就结合官方文档和自己的实际经验来谈一谈。首先请先确保你的系统中环境都准备好了,否则在执行下转载 2016-08-06 23:11:31 · 1750 阅读 · 0 评论 -
JMeter学习(三十一)Access Log Sampler
前提:在tomcat\conf\server.xml默认情况下,会有一段代码: Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t "%r" %s %b" prefix="localhost_access_log." suf转载 2016-08-06 23:16:47 · 1199 阅读 · 0 评论 -
JMeter中返回Json数据的处理方法
Json 作为一种数据交换格式在网络开发,特别是 Ajax 与 Restful 架构中应用的越来越广泛。而 Apache 的 JMeter 也是较受欢迎的压力测试工具之一,但是它本身没有提供对于 Json 数据的响应处理。本文中假设需要从 HTTP 的响应头中返回的 Json 格式的数据流中抽取某些特定的数据,数据格式如下:{ "name":"Simpsons family",转载 2016-08-06 23:18:17 · 1913 阅读 · 0 评论 -
JMeter学习(三十二)属性和变量
一、Jmeter中的属性:1、JMeter属性统一定义在jmeter.properties文件中,我们可以在该文件中添加自定义的属性2、JMeter属性在测试脚本的任何地方都是可见的(全局),通常被用来定义一些JMeter使用的默认值,可以用于在线程间传递信息。3、JMeter属性可以在测试计划中通过函数 _P 进行引用,但是不能作为特定线程的变量值。 4、JMeter属性可转载 2016-08-06 23:21:43 · 1242 阅读 · 0 评论 -
Jmeter学习(三十三)调试工具Debug Sampler
一、Debug Sampler介绍: 使用Jmeter开发脚本时,难免需要调试,这时可以使用Jmeter的Debug Sampler,它有三个选项:JMeter properties,JMeter variables,System properties:1、JMeter properties和System properties:通常都选false,这两个就是JMeter和系统的属性,转载 2016-08-06 23:28:49 · 587 阅读 · 0 评论 -
JMeter学习(三十四)测试报告优化
如果按JMeter默认设置,生成报告如下:从上图可以看出,结果信息比较简单,对于运行成功的case,还可以将就用着。但对于跑失败的case,就只有一行assert错误信息。(信息量太少了,比较难找到失败原因)优化大致过程:1、下载style文件:jmeter.results.shanhe.me.xsl2、把下载的文件放到jmeter的extras目录下。3、修改jmeter转载 2016-08-06 23:30:40 · 4815 阅读 · 0 评论 -
JMeter学习(三十五)使用jmeter来发送json/gzip格式数据
一、使用jmeter来发送gzip数据有时候我们需要模拟在客户端将数据压缩后, 发送(post)到服务器端. 通常这种情况,会发生在移动终端上. 这样做的好处, 是可以节省流量. 当然, 服务器返回的数据也可以是gzip格式, 终端在数据展现时,需要先解压缩. 同样也是为了节省网络流量.1. 首先我们把要post的数据, 保存在文本文件里,然后gzip压缩. (可以使用linux中的gz转载 2016-08-06 23:34:12 · 2301 阅读 · 0 评论 -
用BlazeMeter录制JMeter测试脚本
工具:1,JMeter2,Chrome3,BlazeMeter4,SwitchyOmega(如果需要代理) 步骤:以上工具准备好以后就可以录制JMeter的测试脚本了,在Chrome中点击BlazeMeter插件,出现下图: 可以为本次录制取一个名字,然后点击红色原点,开始录制脚本,然后开始录制你需要测试的功能。 每一次服务器请求,Blaze转载 2016-08-06 23:36:58 · 783 阅读 · 0 评论 -
JMeter学习(三十六)发送HTTPS请求
Jmeter一般来说是压力测试的利器,最近想尝试jmeter和BeanShell进行接口测试。由于在云阅读接口测试的过程中需要进行登录操作,而登录请求是HTTPS协议。这就需要对jmeter进行设置。 (一)设置HTTP请求 我们首先右键添加线程组,然后继续右键添加控制器,由于登陆操作只请求一次,因而选择仅一次控制器。接下来右键添加sampler->HTTP请求,设置HTTP请求。这里转载 2016-08-06 23:38:08 · 2186 阅读 · 2 评论 -
JMeter学习(二十)JMeter处理Cookie与Session
有些网站保存信息是使用Cookie,有些则是使用Session.对于这两种方式,JMeter都给予一定的支持。 1.Cookie添加方式:线程组-配置元件-HTTP Cookie 管理器,如下图: 2.Session添加方式:线程组-前置处理器 -HTTP URL 重写修饰符,如下图:有些tomcat的session实现不是通过cookie的,而是通过sessi转载 2016-08-06 15:35:22 · 1493 阅读 · 0 评论 -
JMeter学习(十九)JMeter测试MongoDB
JMeter测试MongoDB性能有两种方式,一种是利用JMeter直接进行测试MongoDB,还有一种是写Java代码方式测试MongoDB性能。 第一种方法1.编写Java代码,内容如下:package com.test.mongodb;import java.io.File; import java.io.FileOutputStream; import转载 2016-08-06 15:31:36 · 911 阅读 · 0 评论 -
JMeter学习(十八)JMeter测试Java(二)
实例:服务为:将输入的两个参数通过IO存入文件; 1、打开MyEclipse,编写Java代码服务:package test;import java.io.File;import java.io.PrintWriter;public class OutputService { public static void output(String fil转载 2016-08-06 15:28:12 · 333 阅读 · 0 评论 -
JMeter学习(二)录制脚本
----------------------------------------------------------------------------------------------------环境Badboy version 2.1.1JDK: 1.7.0_67Apache JMeter-2.11 ----------------------------------转载 2016-08-06 11:18:57 · 1027 阅读 · 0 评论 -
JMeter学习(四)参数化
JMeter也有像LR中的参数化,本篇就来介绍下JMeter的参数化如何去实现。 参数化:录制脚本中有登录操作,需要输入用户名和密码,假如系统不允许相同的用户名和密码同时登录,或者想更好的模拟多个用户来登录系统。这个时候就需要对用户名和密码进行参数化,使每个虚拟用户都使用不同的用户名和密码进行访问。 一、准备脚本,测试数据1、录制一个脚本(可以用badboy工具录制),在j转载 2016-08-06 12:00:19 · 935 阅读 · 0 评论 -
JMeter学习(五)检查点
JMeter也有像LR中的检查点,本篇就来介绍下JMeter的检查点如何去实现。JMeter里面的检查点通过添加断言来完成。 检查点:上一章讲到,我们对用户名和密码进行了参数化,那么怎样来判断jmeter有没有正确调用t.dat里面的文件呢。当然,我们可以从结果图表中查看。但我还是想在“登录”这个地方进行一下检查。1、添加响应断言,右键点击我们的“登录”页面---->添加---->转载 2016-08-06 12:03:03 · 712 阅读 · 0 评论 -
JMeter学习(六)集合点
JMeter也有像LR中的集合点,本篇就来介绍下JMeter的集合点如何去实现。JMeter里面的集合点通过添加定时器来完成。注意:集合点的位置一定要在Sample之前. 集合点:简单来理解一下,虽然我们的“性能测试”理解为“多用户并发测试”,但真正的并发是不存在的,为了更真实的实现并发这感念,我们可以在需要压力的地方设置集合点,拿那个用户和密码的地方,每到输入用户名和密码登录的地转载 2016-08-06 12:08:22 · 687 阅读 · 0 评论 -
JMeter学习(七)聚合报告之 90% Line 正确理解
90% Line 参数正确的含义: 虽然,我的上面理解有一定的道理,显然它(90% 用户的响应时间)是错误的。那看看JMeter 官网是怎么说的?90% Line - 90% of the samples took no more than this time. The remaining samples at least as long as this.“ 90% 的样品没有超转载 2016-08-06 12:15:27 · 1726 阅读 · 0 评论 -
JMeter学习(八)JDBC测试计划-连接Oracle
一.测试环境准备 Oracle:10g JDBC驱动:classes12.jar oracle安装目录下(oracle\product\10.2.0\db_1\jdbc\lib\classes12.jar)文件复制到JMeter/lib目录下 JMeter:jmeter-2.11 二.设计转载 2016-08-06 12:19:00 · 703 阅读 · 0 评论 -
JMeter学习(九)FTP测试计划
FTP服务主要提供上传和下载功能。有时间需要我们测试服务器上传和下载的性能。在这里我通过JMeter做一个FTP测试计划的例子。 1.创建一个线程组2.线程组--->添加--->配置元件--->FTP请求缺省值:输入服务器名称或IP。3.线程组--->添加--->Sampler--->FTP请求:选择get为上传方式说明:IP:FTP服务的IPRemote fi转载 2016-08-06 12:24:37 · 1457 阅读 · 0 评论 -
JMeter学习 JMeter使用中遇到的问题:Jmeter Debug - "Unrecognized VM option '+HeapDumpOnOutOfMemoryError"
启动JMeter.bat的程序时,出现以下出错信息: Unrecognized VM option '+HeapDumpOnOutOfMemoryError'Could not create the Java virtual machine.errorlevel=1请按任意键继续. . . 上网查了一下,可以用以下方法解决:编辑jmeter.bat文件,将set D转载 2016-08-06 12:28:51 · 2008 阅读 · 0 评论 -
JMeter学习 参数化User Defined Variables与User Parameters
偶然发现JMeter中有两个元件(User Defined Variables与User Parameters)很相近,刚开始时我也没注意,两者有什么不同。使用时却发现两者使用场景有些不同,现在小结一下。相同点:二者都是进行参数化的。 一、User Defined Variables1、添加方法:选择“线程组”,右键点击添加-Config Element-User Defined转载 2016-08-06 12:43:21 · 841 阅读 · 0 评论 -
JMeter学习(十)一次简单的接口测试
本次接口测试:根据ws查询所有商品的具体的信息.检查商品是否返回成功. 1. 准备测试数据 查询数据库中产品表已上架商品的编号 select ID from ent_product where is_up=1 and state='000001' 保存文件在C:\JmeterWorkSpace\aa.csv。 2. 打开并设置JMeter. a. 点击"测转载 2016-08-06 13:08:44 · 1517 阅读 · 0 评论 -
JMeter学习(十一)WebSerivice测试计划
WebSerivice测试计划的取样器有两种方式:HTTP请求、SOAP/XML-RPC Request。 1. 测试计划启动JMeter,点击测试计划节点上,重命名测试计划:WebserviceTest.如下图: 2. 添加线程组 添加一个线程组,右键单击测试计划 WebserviceTest -添加 - Threads(Users) > 线程组。接下来,修改线程组的默认转载 2016-08-06 13:14:56 · 717 阅读 · 0 评论 -
JMeter学习(十二)目录介绍
JMeter也学了一阵子了,对于基本的操作已了解,再回过头来看看Jmeter的目录,本篇是对于它的目录进行一些简单的介绍。 JMeter解压之后打开,根目录如下图:1、bin:可执行文件目录2、docs:文档目录3、extras:扩展插件目录,目录下的文件提供了对ant的支持4、lib:所用到的插件目录,里面全是jar包,JMeter 会自动在 JMETER_HOME/li转载 2016-08-06 13:16:31 · 507 阅读 · 0 评论 -
JMeter学习(十三)分布式部署
Jmeter 是java 应用,对于CPU和内存的消耗比较大,因此,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至会引起JAVA内存溢出错误。为了让jmeter工具提供更大的负载能力,jmeter短小精悍一有了使用多台机器同时产生负载的机制。 那么,是如何实现多台负载机同时运行的呢?当然不会多个人坐在多台负载机面前,一喊开始,大家同时启动jmeter。这种转载 2016-08-06 14:28:49 · 707 阅读 · 0 评论 -
JMeter学习(十四)JMeter监控Tomcat性能
使用jmeter的tomcat监视器功能,可以通过向tomcat的status页面发送get请求,得到资源使用信息,然后转换为只直观的图像方式,这样的话,就可以监视到服务器的资源使用情况,不过需要注意的是,要使用tomcat监视器功能,就必须在要监视的服务器上装有tomcat。 一. 配置$CATALINA_HOME/conf/tomcat-users.xml.配置如下:转载 2016-08-06 15:08:28 · 894 阅读 · 0 评论 -
JMeter学习(十六)JMeter函数学习
JMeter函数是一些能够转化在测试树中取样器或者其他配置元件的域的特殊值。一个函数的调用就像这样:${_functionName(var1,var2,var3)},-functionName匹配函数名,圆括号内设置函数的参数,例如${_time(YMD)}实际参数因函数而不同。不需要参数的函数使圆括号内为空,例如${_theadNum}.Jmeter函数有两种函数:自定义静态值(或者变量)和转载 2016-08-06 15:15:58 · 13074 阅读 · 0 评论 -
JMeter学习(十七)JMeter测试Java
目的:对Java程序进行测试 目录一、核心步骤二、实例三、JMeter Java Sampler介绍四、自带Java Request Sampler 一、核心步骤1.创建一个Java工程;2.将JMeter的lib目录下的jar文件添加进此工程的Build Path;3.创建一个类并实现JavaSamplerClient接口或继承AbstractJa转载 2016-08-06 15:26:10 · 493 阅读 · 0 评论 -
JMeter学习(三十七)Jmeter录制手机app脚本
环境准备:1.手机2.wifi3.Jmeter 具体步骤:1、启动Jmeter;2、“测试计划”中添加“线程组”;3、“工作台”中添加“HTTP代理服务器”;4、配置代理服务器:Global Settings下面的端口配置:9988,HTTPS Domains配置:http://10.200.52.88,目标控制器配置:测试计划>线程组其中,端口:随意设置;转载 2016-08-06 23:40:51 · 598 阅读 · 0 评论