目录

  • 一、JMeter 介绍
    • JMeter与LoadRunner比较
    • JMeter缺点
  • 二、 JMeter 安装
    • 1.官网下载JMeter
    • 2.安装JMeter
    • 3.配置环境变量
    • 4.汉化
    • 5.安装Plugins Manager
    • 6.Plugins Manager主要插件介绍和安装
      • PerfMon
      • 3 Basic Graphs
      • 5 Additional Graphs
  • 三、JMeter 目录详解
    • bin目录 可执行文件目录
    • lib目录
    • dosc目录
    • extras目录
    • Licenses jmeter 软件许可文件目录
    • printable_docs目录
    • LICENSE JMeter ——许可说明
    • NOTICE JMeter ——简单信息说明
    • README.md ——JMeter 官方基本介绍
  • JMeter主要配置文件
    • jmeter.properties
    • system.properties
    • user.properties

一、JMeter 介绍

Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等。JMeter可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或者分析不同负载下的整体性能。

同时,JMeter可以帮助你对你的应用程序进行回归测试。通过你创建的测试脚本和assertions来验证你的程序返回了所期待的值。为了更高的适应性,JMeter允许调用二次开发的jar包来丰富你的测试场景;JMeter允许你使用正则表达式来创建这些assertions.

JMeter与LoadRunner比较

JMeter 是一款开源(有着典型开源工具特点:界面不美观)测试工具,虽然与LoadRunner相比有很多不足,比如:它结果分析能力没有LoadRunner详细;很它的优点也有很多:

开源,他是一款开源的免费软件,使用它你不需要支付任何费用,
小巧,相比LR的庞大(最新LR11将近4GB),它非常小巧,不需要安装,但需要JDK环境,因为它是使用java开发的工具。
功能强大,jmeter设计之初只是一个简单的web性能测试工具,但经过不段的更新扩展,现在可以完成数据库、FTP、LDAP、WebService等方面的测试。因为它的开源性,当然你也可以根据自己的需求扩展它的功能。扩展性极强。它可以测试性能,可以测试接口,甚至可以通过加载浏览器驱动完成UI自动化的工作!
两者最大的区别:jmeter不支持IP欺骗,而LR支持。

从上边来看Jmeter是好处多多的,但是任何事、任何物都违背不了一个法则,那就是“金无足赤人无完人”,Jmeter也是有不足之处的,下边我们来看看Jmeter的不足之处,这里宏哥就不深究它到底是娘胎里带来的还是后天造成的了,一般对于软件来说都是娘胎里带来的,先天不足。原因是:开发的时候可能由于某些原因考虑不足,导致其娘胎里带病。

JMeter缺点

使用JMeter无法验证JS程序,也无法验证页面UI,所以要须要和Selenium配合来完成Web2.0应用的测试。

二、 JMeter 安装

1.官网下载JMeter

官网地址:http://jmeter.apache.org/download_jmeter.cgi

点击下载 apache-jmeter-5.4.1.tgz
binaries是已编译的,可以直接运行;source是源码

2.安装JMeter

1、准备工作:安装Java 1.8版本以上
详细安装参考文章:Mac系统安装JDK1.8及环境变量配置

2、解压后到安装目录启动jmeter

# 移动压缩包到目录/Users/anan/Library
sudo cp /Users/anan/Downloads/apache-jmeter-5.4.1.tgz /Users/anan/Library/Apache/
# 解压
tar -zxvf apache-jmeter-5.4.1.tgz# 切换到bin目录
cd /Library/Apache/apache-jmeter-5.4.1/bin
# 启动jmeter
sh jmeter

3.配置环境变量

现在,每次运行JMeter都需要先切换到安装目录,略显麻烦。故我们要配置JMeter的环境变量。
~/.bash_profile文件是Mac环境下的环境变量配置文件。

# 如果是第一次配置环境变量,创建一个.bash_profile的隐藏配置文件
touch .bash_profile
# 如果配置文件已经存在,直接编辑
vim ~/.bash_profile# 在bash_profile中加入如下内容后保存文件
export JMETER_HOME=/Library/Apache/apache-jmeter-5.4.1/
export PATH=$PATH:$JMETER_HOME/bin# 重新加载 .bash_profile
source ~/.bash_profile# 建立软连接后,任意目录下都可以启动JMeter
ln -s /Users/anan/Library/Apache/apache-jmeter-5.4.1/bin/jmeter /usr/local/bin/# 验证安装成功
jmeter --version # 任意目录下都可以启动JMeter
jmeter


Don’t use GUI mode for load testing:这是一段提示信息,不使用GUI模式进行负载测试,要使用NON GUI模式。

4.汉化

(1)Jmeter 短期汉化【默认英文版,修改时才显示中文简体版】:

(2)Jmeter 长期汉化(修改后,重启默认为中文简体版):

# 切换到目录下
cd /opt/apache-jmeter-5.4.1/bin/# 修改jmeter.properties后保存# 修改前:#Preferred GUI language. Comment out to use the JVM default locale's language.#language=en# 修改后:language=zh_CN# 重启jmeter后默认为中文
jmeter

5.安装Plugins Manager

1、插件下载官方地址:https://jmeter-plugins.org/downloads/all/

2、点击 plugins-manager.jar 下载

3、将下载的plugins-manager.jar包复制到Jmeter安装目录,lib/ext下面

4、启动 Jmeter 后选项菜单中有 Plugins Manager 选项

5、点击Plugins Manager,出现下图界面,分别显示已安装插件,可用插件(未安装),可更新插件

6、点选任一插件,右上角窗口介绍了插件的功能及使用方法

6.Plugins Manager主要插件介绍和安装

PerfMon

PerfMon:监控服务器硬件,如CPU,内存,硬盘读写速度等

安装:勾选PerMon,点击右下角的 Apply Changes and Restart JMeter

3 Basic Graphs

3 Basic Graphs:主要显示平均响应时间,活动线程数,成功/失败交易数等

安装:勾选3 Basic Graphs,点击右下角的 Apply Changes and Restart JMeter

5 Additional Graphs

5 Additional Graphs:主要显示吞吐量,连接时间,每秒的点击数等

安装:勾选5 Additional Graphs,点击右下角的 Apply Changes and Restart JMeter

三、JMeter 目录详解

解压JMeter后目录如下:

bin目录 可执行文件目录


examples:目录下包含Jmeter使用实例,打开里面是一个csv样例
ApacheJMeter.jar:JMeter源码包
jmeter.sh:linux下启动jmeter的主脚本
jmeter.bat:windows下启动jmeter的主脚本
jmeter-server:Linux下启动负载生成器文件
jmeter-server.bat:windows分布式测试要用到的服务器,启动负载生成器服务文件
jmeter.log:Jmeter运行日志文件
jmeter.properties:是jmeter主要的配置文件,超过80%的配置项都是通过这个文件实现。(修改配置文件后,重启Jmeter后才能生效)
shutdown.cmd:windows下 jmeter 关闭文件
stoptest.cmd:windows下 jmeter 测试停止文件

lib目录

该目录包含两个子目录,其中ext子目录存放有JMeter的核心jar包,另一个junit子目录存放JUnit测试脚本。用户扩展所依赖的包,应该直接放到lib目录下,而非lib/ext下。
注意:无法识别 zip 格式的包文件,所以需要的包文件均要求以 .jar 结尾

dosc目录

docs目录下的文件是JMeter的Java Docs,而printable_docs的usermanual子目录下的内容是JMeter的用户手册文档,其component_reference.html是最常用到的核心元件帮助文档。

该目录下存放的是jmeter官方文档的API文档,主要是用于二次开发。

extras目录

该目录下的文件提供了对构建工具Ant的支持,可以使用Ant来实现测试自动化,例如批量脚本执行,产生HTML格式的报表,测试运行时,可以把测试数据记录下来,Jmeter会自动生成一个.jtl文件,将该文件放到extras目录下,运行“ant -Dtest=文件名 report”,就可以生成测试统计报表。也可以用于持续集成。

Licenses jmeter 软件许可文件目录

printable_docs目录

该目录存放的是jmeter官方提供的帮助文档。printable_docs的demos子目录下有一些常用的JMeter脚本案例,可以作为参考。可打印半版本目录。

LICENSE JMeter ——许可说明

NOTICE JMeter ——简单信息说明

README.md ——JMeter 官方基本介绍

JMeter主要配置文件

配置文件可能存在优先级关系,好像user.properties会覆盖jmeter.properties,一般修改配置都是修改或者添加user.properties,不建议修改jmeter.properties。

通过修改reportgenerator.properties的下面配置,可以减少采样时间,增加采样精度。生成的报告的其他内容也可以在这里修改。当然,建议这些修改,都放到user.properties里面去。

修改jmeter.properties里的这些配置,可以控制报告DashBoard的显示时间,建议这些配置放到user.properties里面去。

jmeter.properties

jmeter.properties,定义jmeter运行的关键配置;这个文件的关键配置如下:

#默认语言设置language=en#捕捉cookie开关CookieManager.save.cookies=true#配置编辑器的字体和尺寸jsyntaxtextarea.font.family=宋体jsyntaxtextarea.font.size=20#配置默认编码格式sampleresult.default.encoding=UTF-8#SSL 配置:重点关注下面几个配置# 指定 HTTPS 协议层  # 指定 HTTPS 协议层https.default.protocol=TLS# 指定 SSL 版本,实际应用中可能需要修改https.default.protocol=SSLv3# 设置启动的协议https.socket.protocols=SSLv2Hello SSLv3 TLSv1# 缓存控制,控制 SSL 是否可以在多个迭代中重用https.use.cached.ssl.context=true#JMeter 测试项目自动备份配置# 设置是否启用自动备份,默认是 truejmeter.gui.action.save.backup_on_save=true# 设置自动备份目录,默认备份至 JMeter 根目录的 backups下jmeter.gui.action.save.backup_directory=# 设置自动备份项目数,默认为最近 10 个jmeter.gui.action.save.keep_backup_max_count=10#远程主机配置# 配置远程主机的 IP,默认为本机。用逗号","可以设置多个远程主机remote_hosts=127.0.0.1# 多个远程主机指定示例如下,其中:后为端口remote_hosts=127.0.0.1:1099,127.0.0.1:1200,127.0.0.1:1300对于 RMID 的配置请直接看配置文件中的选项说明#日志管理配置# 设置日志格式log_format_type=default# 设置日志输出级别log_level.jmeter=INFO# 设置 junit 日志输出级别log_level.jmeter.junit=DEBUG# 设置日志输出目标文件,默认为 jmeter.loglog_file=jmeter.log# jmeter.bat 关键配置修改
#为了更优化的使用 jmeter,需要对 jmeter.bat 中的一些配置根据当前机器的配置进行优化,这里进行关键配置项说明,大家根据自己的机器的配置来进行修改。jvm 相关配置,大概在 80 行左右,找到这些配置,对其中的数值根据当前机器的硬件配置来修改。set HEAP=-Xms2048m -Xmx2048mset NEW=-XX:NewSize=512m -XX:MaxNewSize=512mset SURVIVOR=-XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=50%set TENURING=-XX:MaxTenuringThreshold=2if %current_minor% LEQ "8" (rem Increase MaxPermSize if you use a lot of Javascript in your Test Plan :set PERM=-XX:PermSize=512m -XX:MaxPermSize=1024m)# 设置输出报告模板格式jmeter.save.saveservice.output_format = csv

system.properties

system.properties,定义Java进程的系统变量,通过System.getProperties()可查询。

user.properties

user.properties,自定义配置,可覆盖jmeter.properties。

JMeter教程1 - 介绍环境搭建 (Mac)插件安装相关推荐

  1. Docker容器系列教程(三):jenkins环境搭建与插件安装

    回顾:上一文对Docker常用的命令以罗列的方式做了一个详尽的介绍.本文将使用这些命令搭建一个jenkins持续集环境,解决jenkins不能联网的问题来安装各种常用插件. Jenkins 简述 Je ...

  2. JAVAWEB开发之工作流详解(一)——Activiti的环境搭建、插件安装、核心API

    工作流的概念 工作流(Workflow),就是"业务过程的部分或整体在计算机应用环境下的自动化",它主要解决的是"使在多个参与者之间按照某种预定义的规则传递文档.信息或任 ...

  3. flume-kafka环境搭建-mac单机模式

    flume-kafka环境搭建-mac单机模式 本文内容:(1)mac系统搭建单机模式flume.kafka (2)flume监听本机端口并实时输出数据至控制台 (3)flume监听端口,发送数据至k ...

  4. mysql的安装版本有无开发版_moodle 2.0.2 安装图文教程 2——PHP Mysql环境搭建和moodle安装 - 乔木的日志 - ICT教育 - 中小学信息技术教育和教育信息化网站...

    moodle 2.0.2 安装图文教程 2--PHP+Mysql环境搭建和moodle安装 热度 6已有 211 次阅读 2011-3-29 16:49 ||关键词:moodle 2 图文安装教程 p ...

  5. 强化学习快餐教程(1) - gym环境搭建

    强化学习快餐教程(1) - gym环境搭建 欲练强化学习神功,首先得找一个可以操练的场地. 两大巨头OpenAI和Google DeepMind都不约而同的以游戏做为平台,比如OpenAI的长处是DO ...

  6. Android Studio2.0 教程从入门到精通MAC版 - 安装篇

    来自:http://www.open-open.com/lib/view/open1466430392743.html 前言 这个教程你将学会如何使用Android Studio2.0开发Androi ...

  7. python和编辑器一块安装_python环境搭建与编辑器安装

    #  python环境搭建与编辑器安装 学习一种语言的开始,一定是搭建编译环境以及拥有一个编辑器,作为公众号的第一篇文章,也是python教程的开始,本文主要介绍python编译环境的搭建与编辑软件的 ...

  8. Java从入门到实战总结-1.1、Java基础之环境搭建和eclipse安装

    Java从入门到实战总结-1.1.Java基础之环境搭建和eclipse安装 文章目录 Java从入门到实战总结-1.1.Java基础之环境搭建和eclipse安装 1.Hello Java 1.1. ...

  9. Linux环境搭建记录——GitLab安装

    Linux环境搭建记录 GitLab安装 GitLab安装 更多GitLab详细信息请参考:GitLab官方文档 分步指南 获取GitLab资源 可以访问 https://mirrors.tuna.t ...

最新文章

  1. oracle列名无效字符,案例学习Oracle错误:ORA-00904 invalid column name
  2. C++编程优化——让你的代码飞起来
  3. monty python-Monty Python
  4. 扫描项目里没有使用的图片mac工具,删除没有使用的图片以减小包的体积
  5. 经典面试:当你输入一个网址后回车,实际会发生什么?
  6. 【CV】使用OpenCV搭建违章停车检测系统
  7. python 更改输出的颜色_python 输出指定的颜色
  8. MAX10 ADC的一些基知识
  9. nvidia-smi‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件
  10. bat批处理命令拨号上网
  11. Ecology 建模表单 数据库字段与页面字段对应关系显示
  12. 计算机维护费可以跨年吗,航天信息服务费可以跨年抵扣吗
  13. [python]python jieba 模块
  14. 如何给awk传外部参数
  15. vscode 使用手册
  16. Ubuntulinux离线安装ClamTk杀毒软件步骤和使用方法
  17. Bitmap毛边问题
  18. LVC | 一种简单的小样本目标检测方法
  19. idea美化插件推荐
  20. 申请软著需要什么材料,多长时间下证?

热门文章

  1. ExtJs皮肤主题定制 sencha Themer
  2. 手机端点击图片全屏预览
  3. 北新建材被授予“亚洲最大石膏板产业集团”硅钙板吊顶
  4. ABAP使用LOOP AT ASSIGNING FIELD SYMBOL直接更新内表数据
  5. win10重置进度条不动了_Windows10系统重置时卡死的处理方法
  6. 中外文献图书网址汇总
  7. 大数据是什么意思?大数据有哪些应用?
  8. Win10计算机窗口空白,windows10语言栏丢失怎么办?win10语言栏显示空白的解决办法...
  9. Windows下用戶無法寫入和讀取
  10. vivo S7e和华为nova8se 的区别 哪个好