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. 使用gitlab-runner本地验证.gitlab-ci.yml

    背景 在gitlab上配置新项目的CI的时候,需要编写项目的 .gitlab-ci.yml 文件. 每次修改 .gitlab-ci.yml 文件之后都要执行git push让GitLab去构建来验证当 ...

  2. 安利一波这12个IDEA插件,太香了!

    这里补充一下常用的插件, 非常值得安利一波! 1.日晒主题 Solarized Themes 推荐指数:☆☆☆☆☆ 推荐理由:日晒主题本身是为vim定制的.后来移植到ide 非常酷!配色非常耐看.  ...

  3. JavaScript实现自定义右键菜单

    JavaScript实现自定义右键菜单,思路如下: 1. 屏蔽默认右键事件: 2. 隐藏自定义的菜单模块(如div.ul等): 3. 右键点击特定或非特定区域,显示菜单模块: 4. 再次点击,隐藏菜单 ...

  4. Java获取某年某月的第一天和最后一天

    /** * 获取某年某月的第一天 * @Title:getFisrtDayOfMonth * @Description: * @param:@param year * @param:@param mo ...

  5. Oracle创建表空间创建用户授权

    注意:SYS用户下执行.sys登录必须为sysdba身份.查看数据文件存放位置. select * from dba_data_files; 1.创建表空间 CREATE TABLESPACE tp_ ...

  6. 买卖股票的最佳时机 III

    给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你最多可以完成 两笔 交易. 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的 ...

  7. Openwrt_Linux_crontab任务_顺序执行脚本

    Openwrt_Linux_crontab任务_顺序执行脚本 转载注明来源: 本文链接 来自osnosn的博客,写于 2020-12-21. Linux (openwrt,debian,centos. ...

  8. php 二位数组 转一维数组

    $result = []; array_map(function ($value) use (&$result) { $result = array_merge($result, array_ ...

  9. 使用vs code搭建Q#开发环境 (Mac)

    Q# 是微软几年前发布的一门用于模拟量子编程的语言. 3年前我在当时风靡的博客网站 ITEYE 上发布过如何在windows上搭建其开发环境:Q#开发环境搭建.时过境迁,不但iteye不知何处去,连Q ...

  10. python安装whl包时出现的问题解决:is not a supported wheel on this platform

    @ 目录 一.问题 二.查找问题 三.问题解决 一.问题 1.下载一个twisted包 安装Twisted,进入https://www.lfd.uci.edu/~gohlke/pythonlibs 下 ...