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. 1 认识开源性能测试工具jmeter

    典型的性能测试工具主要有2个,Load Runner和jmeter.Load Runner是商业化的,Jmeter是开源的.下面我们认识一下开源性能测试工具jmeter. 1.jmeter是什么? A ...

  2. 开源性能测试工具--Jmeter介绍+安装

     一.           Apache JMeter介绍 1.       Apache JMeter是什么Apache JMeter 是Apache组织的开放源代码项目,是一个100%纯Java桌 ...

  3. 【转】开源性能测试工具 - Apache ab 介绍

    版权声明:本文可以被转载,但是在未经本人许可前,不得用于任何商业用途或其他以盈利为目的的用途.本人保留对本文的一切权利.如需转载,请在转载是保留此版权声明,并保证本文的完整性.也请转贴者理解创作的辛劳 ...

  4. 性能测试工具Locust,一个开源性能测试工具

    性能测试工具Locust,一个开源性能测试工具使用Python代码来定义用户行为.用它可以模拟百万计的并发用户访问你的系统.1.它与目前主流的LoadRunner和Jmeter玩法都不一样.2.它完全 ...

  5. 性能测试工具 jmeter 分布式压力测试实操

    性能测试工具 jmeter 分布式压力测试实操 本文在Non-GUI Mode下进行,准备好三台有jdk环境,linux操作系统,同一局域网测试机器,运行两台slave,一台master机器,进行分布 ...

  6. 性能测试工具JMeter 基础(六)—— 测试元件: 线程组

    线程组的定义: 线程组是测试计划执行的入口,所有的逻辑控制器和取样器都必须在线程组下,其他的元件根据位置的不同作用域是不同的. 线程组是每个线程都是独立运行测试脚本,一个线程组就等于一个用户,通过多个 ...

  7. 如何使用JMeter开源性能测试工具来构建Web性能测试体系

    一.性能测试一些概念 性能测试:就是通过自动化的测试工具模拟多种正常峰值及异常负载条件来对系统的各项性能指标进行测试.负载测试和压力测试都属于性能测试,两者可以结合进行. 负载测试:确定在各种工作负载 ...

  8. 性能测试工具JMeter

    JMeter介绍     Apache JMeter是Apache组织的开放源代码项目,具有极高的可扩展性,是一个100%纯Java桌面应用,用于压力/性能测试.JMeter可以用于测试静态或者动态资 ...

  9. Tools - 负载性能测试工具JMeter

    JMeter简介 HomePage:http://jmeter.apache.org/ Apache JMeter是Apache组织开发的基于Java的开源负载性能测试工具. 可以用于对服务器.网络应 ...

随机推荐

  1. Hive中的集合数据类型

    除了使用础的数据类型string等,Hive中的列支持使用struct, map, array集合数据类型. 数据类型 描述 语法示例 STRUCT 和C语言中的struct或者"对象&qu ...

  2. 纯Python绘制艺术感满满的山脊地图,创意满分

    1 简介 下面的这幅图是英国摇滚乐队 Joy Division 在1979年发行的其第一张录音室专辑 Unknown Pleasures 的封面,由艺术家 Peter Saville 基于射电脉冲星信 ...

  3. exp(cos(t)) - 2*cos(4.*t) + (sin(t./12)).^5;图形

    clc; clear all; close all; t = linspace(0,24*pi,1000); r = exp(cos(t)) - 2*cos(4.*t) + (sin(t./12)). ...

  4. OSPF综合实验

    实验要求: 1.R4为ISP,其上只能配置IP地址,R4与其他所有直连设备间使用共有IP 2.R3--R5/6/7为MGRE环境,R3为中心站点 3.整个OSPF环境IP地址为172.16.0.0/1 ...

  5. Qt学习笔记-Qt5和Qt4在音频方面的不同-QtAV

    之前学习qt4的时候,播放音频用的是phonon播放后端插件+mplayer. 今天改用qt5了.qt5中去掉了phonon模块加了multimedia.但是依然无法播放音乐,因为没有ffmpge s ...

  6. 阿里云ssl证书过期怎么解决 (免费SSL证书) 三步解决

    阿里云ssl证书过期怎么解决(免费SSL证书),三步解决 使用免费的SSL证书网站  https://ohttps.com 1.注册帐号 2.申请证书 3.部署到阿里云 4.注意事项 1.注册帐号 到 ...

  7. ProceedingJoinPoint 某些方法记录一下

    转载与百度知道,记录一下.遇到在去看API 官方文档//拦截的实体类 Object target = point.getTarget(); //拦截的方法名称 String methodName = ...

  8. git分支的创建与分支之间合并的底层原理

    开发一个版本,采用的发布流程: (1).从master的最新代码拉取一个开发分支,在上面进行开发(这里假设开发分支为dev) (2).在开发分支上不断地进行提交版本,期间,master也会有因为其他版 ...

  9. 2. C++中的引用

    1.  引用的基本使用 作用:给变量起别名 语法:数据类型  &别名=原名 注意: 别名数据类型与原名数据类型一致. 引用必须初始化. 引用一旦初始化后,就不可以更改(只能作为一个变量的别名) ...

  10. 风炫安全web安全学习第三十一节课 命令执行以及代码执行演示

    风炫安全web安全学习第三十一节课 命令执行以及代码执行演示 参考: http://blog.evalshell.com/2020/12/20/风炫安全web安全学习第三十一节课-命令执行以及代/