转 1 认识开源性能测试工具jmeter
1 认识开源性能测试工具jmeter
典型的性能测试工具主要有2个,Load Runner和jmeter。Load Runner是商业化的,Jmeter是开源的。下面我们认识一下开源性能测试工具jmeter。
1、jmeter是什么?
Apache JMeter是Apache组织开发的基于Jave的压力测试工具。
Jmeter可以用于对服务器,网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外Jmeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,Jmeter允许使用正则表达式创建断言。
2、jmeter的特点
能够对HTTP和FTP服务器进行压力和性能测试,也可以对任何数据库进行同样的测试(通过JDBC)。
完全的可移植性和100%纯Java。
完全多线程框架,允许通过多个线程并发取样和通过单独的线程组对不同的功能同时取样。
各种负载统计表和可链接的计时器可供选择。
数据分析和可视化插件提供了很好的可扩展性以及个性化。
具有提供动态输入到测试的功能。
3、JDK下载,安装,配置环境变量。
JDK下载。jmeter 4.0 需要JDK 1.8或以上版本。网址:http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html
JDK安装。双击安装,安装之后运行cmd,输入Java -version可查看版本。
JDK环境变量配置。计算机→属性→高级系统设置→高级→环境变量→系统变量
- 新建“JAVA_HOME”变量,变量值为:D:\Java\jdk1.8.0_171(根据jdk的实际安装路径填写)。
- 新建“CLASSPATH”变量,变量值为:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;(其为java加载类路径,只有类在classpath中java命令才能识别,在路径前加了个"."表示当前路径)。
- 在path变量里添加变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin(变量值之间用“;”隔开,注意原来Path的变量值末尾有没有“;”号,如果没有,先输入“;”号再添加变量值)。
配置之后在cmd窗口输入javac,显示命令用法则说明配置成功。
4、jmeter下载,安装。
Jmeter下载最新版本4.0。官网:http://jmeter.apache.org/download_jmeter.cgi
Jmeter历史版本下载地址:http://archive.apache.org/dist/jmeter/binaries/
Jmeter安装。Jmeter下载之后是一个zip包,解压即可。避免在一个有空格的路径安装 JMeter。这将导致远程测试出现问题。
5、jmeter启动
一般启动:双击bin目录里的jmeter.bat即可启动。
服务器模式启动:jmeter-server.bat。允许在远程节点上以服务器模式运行jmeter,并通过jmeter gui来控制。
6、jmeter工作原理
jmeter可以作为web服务器与浏览器直接的代理网关,以便捕获浏览器的请求和web服务器的响应,如此就可以很容易地生成性能测试脚本。有了性能测试脚本,jmeter就可以通过线程来模拟真实用户对web服务器的访问压力。这与LoadRunner的工作原理基本一致。

7、jmeter的目录结构
1.bin目录下是可执行文件。
jmeter.bat启动,里面可以设置jvm参数。根据经验,heap(堆内存)最多设置为物理内存的一般,默认设置为512M。如果heap超过物理内存的一般,可能运行jmeter会慢,甚至出现内存溢出。
jmeter的log在jmeter.log中查看。
jmeter.properties文件中,属性log_level.JMeter可以设置改变日志详细度。默认是info,可改为debug。也可以在jmeter界面中,点击编辑-添加-非测试元件-Property Display,它相当于把jmeter.properties文件以GUI的方式展现出来,可以在此界面修改参数。
2.docs目录下是jmeter的Java docs。
3.printable_docs目录:其中的usermanual子目录是jmeter用户手册,其中component_reference.html是最常用的核心元件帮助手册。当然你也可以打开jmeter程序后,在帮助菜单下点击“帮助”选项查看帮助手册。
4.extras目录下的文件提供了对ant的支持,可以利用ant来实现自动化,例如批量执行脚本,产生html报告等。
运行jmeter的时候会产生一个jtl文件,把它放到extras目录下,运行ant-Dtest=文件名 report就可以生成测试统计报表。
5.lib目录下的ext子目录是jmeter的核心jar包,junit子目录是放junit脚本的。用户扩展所依赖的包直接放到lib下即可,不要放到lib/ext下。

8、jmeter VS loadrunner

转 1 认识开源性能测试工具jmeter的更多相关文章
- 1 认识开源性能测试工具jmeter
典型的性能测试工具主要有2个,Load Runner和jmeter.Load Runner是商业化的,Jmeter是开源的.下面我们认识一下开源性能测试工具jmeter. 1.jmeter是什么? A ...
- 开源性能测试工具--Jmeter介绍+安装
一. Apache JMeter介绍 1. Apache JMeter是什么Apache JMeter 是Apache组织的开放源代码项目,是一个100%纯Java桌 ...
- 【转】开源性能测试工具 - Apache ab 介绍
版权声明:本文可以被转载,但是在未经本人许可前,不得用于任何商业用途或其他以盈利为目的的用途.本人保留对本文的一切权利.如需转载,请在转载是保留此版权声明,并保证本文的完整性.也请转贴者理解创作的辛劳 ...
- 性能测试工具Locust,一个开源性能测试工具
性能测试工具Locust,一个开源性能测试工具使用Python代码来定义用户行为.用它可以模拟百万计的并发用户访问你的系统.1.它与目前主流的LoadRunner和Jmeter玩法都不一样.2.它完全 ...
- 性能测试工具 jmeter 分布式压力测试实操
性能测试工具 jmeter 分布式压力测试实操 本文在Non-GUI Mode下进行,准备好三台有jdk环境,linux操作系统,同一局域网测试机器,运行两台slave,一台master机器,进行分布 ...
- 性能测试工具JMeter 基础(六)—— 测试元件: 线程组
线程组的定义: 线程组是测试计划执行的入口,所有的逻辑控制器和取样器都必须在线程组下,其他的元件根据位置的不同作用域是不同的. 线程组是每个线程都是独立运行测试脚本,一个线程组就等于一个用户,通过多个 ...
- 如何使用JMeter开源性能测试工具来构建Web性能测试体系
一.性能测试一些概念 性能测试:就是通过自动化的测试工具模拟多种正常峰值及异常负载条件来对系统的各项性能指标进行测试.负载测试和压力测试都属于性能测试,两者可以结合进行. 负载测试:确定在各种工作负载 ...
- 性能测试工具JMeter
JMeter介绍 Apache JMeter是Apache组织的开放源代码项目,具有极高的可扩展性,是一个100%纯Java桌面应用,用于压力/性能测试.JMeter可以用于测试静态或者动态资 ...
- Tools - 负载性能测试工具JMeter
JMeter简介 HomePage:http://jmeter.apache.org/ Apache JMeter是Apache组织开发的基于Java的开源负载性能测试工具. 可以用于对服务器.网络应 ...
随机推荐
- MySQL索引的使用是怎么样的?5个点轻松掌握!
一.前言 在MySQL中进行SQL优化的时候,经常会在一些情况下,对MySQL能否利用索引有一些迷惑. 譬如: MySQL 在遇到范围查询条件的时候就停止匹配了,那么到底是哪些范围条件? MySQL ...
- python的常用内建模块与常用第三方模块
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 一.常用内置模块1.datetimePython 提供了一个 time 和 calendar 模块可 ...
- Mysql5.7.20安装手记
Mysql到5.7之后安装较之前有了很大的不同,特别是解压缩版,可能安装速度较之前有所减少,但对于我们这种一直使用5.5的我来说不知道步骤还真是挺费劲的.下面详细记一下我安装的过程. 1.下载mysq ...
- net core 3.1使用ElasticSearch 全文搜索引擎
ElasticSearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene 基础之上. Lucene 可以说是当下最先进.高性能.全功能的搜索引擎库,无论是开源还是私有. ...
- 深入理解MySQL系列之锁
按锁思想分类 悲观锁 优点:适合在写多读少的并发环境中使用,虽然无法维持非常高的性能,但是在乐观锁无法提更好的性能前提下,可以做到数据的安全性 缺点:加锁会增加系统开销,虽然能保证数据的安全,但数据处 ...
- 收下这款 Vue 项目模版,它将让你的开发效率在 2021 年提高 50%
这是什么 vue-automation 是一款开箱即用的 Vue 项目模版,它基于 Vue CLI 4 众所周知,虽然 Vue CLI 提供了脚手架的功能,但由于官方的脚手架过于简单,运用在实际项目开 ...
- SpringBoot文件上传配置
/** * 文件上传配置 * @return */ @Bean public MultipartConfigElement multipartConfigElement() { MultipartCo ...
- JavaDailyReports10_05
1 package varycode; 2 3 import java.util.ArrayList; 4 import java.util.Random; 5 6 public class Vary ...
- Thread.join详解
/** * 如果某个线程在另一个线程t上调用t.join:那么此线程将被挂起,直到目标t线程的结束才恢复即t.isAlive返回为假 * * @date:2018年6月27日 * @author:zh ...
- 解决首页中Better-scroll可滚动区域的问题
在首页时候,使用BetterScroll插件的时候,滚动的时候经常会卡顿.Better-scroll在决定有多少区域可以滚动时,是根据ScrollerHeight属性决定的.ScrollerHeigh ...