阅读《全栈性能测试修炼宝典JMeter实战》第三章笔记(二)

  • 3.2.7 X3【控制器】

拿收邮件为例,只需要登录一次就可以查看多份邮件,如何控制登陆次数?可以参考JMeter中的逻辑控制器(后续说的控制器)。控制器的访问路径:【测试计划】——【线程组】——【逻辑控制器】,对它的认识如下图所示:

  •  3.2.8、X4【定时器】

为了足够真实地模拟用户负载,我们有时会需要模拟一些请求在同一时刻发出去,就好像把大家集合在一条起跑线上,听指令,一声令响,同时起跑。结合的功能就可以由定时器来完成,它的访问路径为:【测试计划】——【线程组】——【定时器】,认识如下图示:

  • 3.2.9、X5【线程组】 

线程组用于模拟大量用户负载的情况,在此元件中可以设置运行的线程数(就是模拟多少用户,一用户一线程),其设置也较简单,除了设置线程数之外,还可以设置线程时长,定时运行,访问路径:【测试计划】——【Threads (Users)】,其认识如下图所示:

  • 3.2.10、 Test Fragment 

JMeter GUI菜单中可以看到Test Fragment 这个组件,它是一个辅助组件,它可以放置任何JMeter测试元件,它存在的理由:

(1)在脚本开发过程中可以用来备份元件;

(2)TestFragment 下的元件可以被模块化控制器调用,可以利用它来模块化请求,供模块控制器调用;

对它的认识如下所示:

  • 3.2.11、工作台

它不直接参加运行,有间接作用。功能有:

(1)运行JMeter录制Http协议时就用到它,建立一个HTTP代理服务器元件,设置代理信息然后进行录制;

(2)设置服务器监控(HTTP Mirror Server),不建议使用此功能来做测试监控,出于对Jmeter负载产生影响去考虑;

(3)显示当前脚本;

JMeter的设计理念也是采用大多数性能测试工具的方式开发,方便进行扩展。

  • 3.3、JMeter运行原理

JMeter是通过线程的方式来运行的,它运行在JVM上,因为通过进程的方式每个进程的开销比较大,每台负载机上的进程数量就不会允许太多,当需要大量负载机时,就不经济了。再者java支持多线程。它通过线程组来驱动多线程发起负载,jmeter的运行场景不仅仅是GUI,还有命令行,命令行对于负载机的资源消耗会更小;

(1)控制机:运用多台JMeter负载机进行性能测试时,被选中作为管理机的那台机器即是控制机;

(2)负载机:向被测试应用服务器发起负载的机器,控制机同时也是一台负载机;

(3)流程运行逻辑:

远程负载机首先启动Agent程序,待控制机连接;

控制机连接上远程负载机;

控制机发送指令(脚本及启动命令)启动线程;

负载机运行脚本,回传状态(包括测试结果);

控制机收集结果并显示;

  • 3.4、JMeter测试计划要素

JMeter中一个脚本即是一个测试计划,也是一个管理单元。JMeter的请求模拟与并发数(设置线程数,一个线程代表一个虚拟用户)设置都在脚本文件中一起设置,测试计划要素如下:

(一)脚本中测试计划只能有一个

(二)测试计划中至少要有一个线程组

(三)至少要有一个取样器

测试的目的就是模拟用户请求,没有取样脚本就毫无意义,没有意义就不用谈论对错了。

(四)至少要有一个监听器

  • 3.5、JMeter环境介绍

可以安装至windows或者linux系统上

1、安装

从Apache网站上下载二进制包.taz后缀名为Linux使用的包,.zip后缀名为windows使用的包,其在windows下的目录:

2、JMeter工具目录介绍

bin:放置各类配置文件(比如日志文件、JVM设置等)、启动文件(JMeter启动快捷方式,报告生成快捷方式、、Heap Dump快捷方式等 )、启动jar包、示例脚本等;

docs:放置jmeter API离线帮助文档,Web方式;

extras:JMeter辅助功能,提供与Ant、Jenkins集成的可能性,我们可以利用Ant与Jenkins来构建性能测试自动化框架。Ant可以利用xsl脚本把XML格式的测试结果以HTML方式展示,下图为xsl解析测试的结果:

 lib:JMeter组件以jar包的形式放置在lib/ext目录下,如果扩展JMeter组件,扩展后的jar包即放在此目录下,如图3-20所示,JMeter启动时会加载此目录下的jar包;

license:JMeter licenses相关声明信息放在此文件夹,全部是文本文件,对测试没有实际意义;

printable_docs:JMeter的离线帮助文件放置目录,是我们学习它的向导;

LICENSE:License说明文件;

NOTICE:版权声明;

README:jmeter简明介绍;

3、环境变量

配置Java的环境变量,如下图所示:

 4、启动

完成了上面的1,2,3步骤后我们就可以启动JMeter了,双击3-22中的jmeter.bat即可以启动JMeter,jmeter是Linux下的启动文件。

启动过程中屏幕一闪而过,多半是启动不成功,请检查你的JAVA_HOME配置是否正确;

如果出错,多半是加载lib/ext目录下的jar包出错了,经常是在扩展JMeter功能时出错,错误原因通常是依赖的jar包缺失。

  • 3.6、JMeter与LoadRunner异同

1、两者的异同

(1)LoadRunner是性能测试的领袖,标准制定者;JMeter是后起之秀;

(2)LoadRunner主要是由C语言,支持Java、VB、C#;JMeter是纯Java开发,支持多种Java脚本语言;

(3)LoadRunner费用高昂,JMeter完全免费;LoadRunner学习成本更低;

(4)LoadRunner支持多种应用的性能测试,不管C、Java、VB、JavaScript、C#开发的程序、数据库、本地程序也好、远程调用也好;C/S还是B/S模式甚至移动端都可以不负使命来完成。JMeter虽然功能有限,不过还是可以通过编程来扩展。所以大家不要将扩展想的那么难,解决问题应该是我们的追求,这正是技术价值的体现,也是作为一个性能测试工程师的核心价值;

(5)LoadRunner的结果分析器十分强大,JMeter在第三方插件的扩展下也具备了与LoadRunner相媲美的体验;

(6)工具没有好坏,更在于使用的人,对于企业来讲,可靠、低成本地解决性能问题才是硬道理;

完结~

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
全栈性能测试修炼宝典 JMeter实战》是软件测试领域里程碑式的重要著作,由多位培养出经理级乃至总监级性能高手的大师联手创作,本书深入讲解了性能测试实践操作过程中诸多难题的调优心法,实现从理论到实操的升华。列出自学所需的性能技能目录树,助力测试小白迅速成长为技术大牛。从脚本到运维、公式到指标的运用掌握应有尽有,手把手教你性能测试技巧。此书在手,助你走出迷茫。   内容推荐   “基础篇”:欲练神功,不必自宫。打我基础,从此坦途。   “工具篇”:欲善其事,先利其器。神剑在手,天下任走。   “实践篇”:练武无功,到老皆空。有武有功,江湖轻松。   “提升篇”:江湖之大,无奇不有。融会贯通,相忘江湖   首部分:基础篇   帮助初学者或想踏入这个行业的工程师迅速了解除工具以外的性能测试的真实本质。去伪求真,使读者能够把握性能测试要点和难点及职业规划有进一步的认识。不管你是内行还是外行,读完后必有所获。   第部分:工具篇   可当JMeter工具书来进行查阅,是市面上目前为止比较全面的JMeter讲解工具。学会热门的负载工具JMeter,对各种常见协议的性能测试工作(包括自动化测试) 测试脚本不用愁。   第三部分:实践篇   可学到Linux、Windows平台的性能监控、诊断分析;炼就火眼金睛,见微知著的技能;性能问题快速定位。   适合中高级性能测试工程师阅读,掌握性能分析方法,学会如何调优,了解当前的性能调优手法。   可跟书中实例操作,掌握性能测试整个过程,包括需求分析、测试计划、脚本开发、测试数据制作、测试执行、测试结果诊断分析、性能调优整个过程,真正能够开始进行性能测试工作。   第四部分:提升篇   性能测试自动化(Jenkins+Ant+JMeter),能够很方便的实现性能测试回归。提高产率,更少的人力,更低的功耗,更高的生产率;老板怎么爱你都不算多。   另外,前端的性能表现会直接影响到客户体验,前端性能测试也将成为新的性能点,读者可以更深层的了解此方面的知识。
全栈性能测试修炼宝典 JMeter实战》是软件测试领域里程碑式的重要著作,由多位培养出经理级乃至总监级性能高手的大师联手创作,本书深入讲解了性能测试实践操作过程中诸多难题的调优心法,实现从理论到实操的升华。列出自学所需的性能技能目录树,助力测试小白迅速成长为技术大牛。从脚本到运维、公式到指标的运用掌握应有尽有,手把手教你性能测试技巧。此书在手,助你走出迷茫。   内容推荐   “基础篇”:欲练神功,不必自宫。打我基础,从此坦途。   “工具篇”:欲善其事,先利其器。神剑在手,天下任走。   “实践篇”:练武无功,到老皆空。有武有功,江湖轻松。   “提升篇”:江湖之大,无奇不有。融会贯通,相忘江湖   首部分:基础篇   帮助初学者或想踏入这个行业的工程师迅速了解除工具以外的性能测试的真实本质。去伪求真,使读者能够把握性能测试要点和难点及职业规划有进一步的认识。不管你是内行还是外行,读完后必有所获。   第部分:工具篇   可当JMeter工具书来进行查阅,是市面上目前为止比较全面的JMeter讲解工具。学会热门的负载工具JMeter,对各种常见协议的性能测试工作(包括自动化测试) 测试脚本不用愁。   第三部分:实践篇   可学到Linux、Windows平台的性能监控、诊断分析;炼就火眼金睛,见微知著的技能;性能问题快速定位。   适合中高级性能测试工程师阅读,掌握性能分析方法,学会如何调优,了解当前的性能调优手法。   可跟书中实例操作,掌握性能测试整个过程,包括需求分析、测试计划、脚本开发、测试数据制作、测试执行、测试结果诊断分析、性能调优整个过程,真正能够开始进行性能测试工作。   第四部分:提升篇   性能测试自动化(Jenkins+Ant+JMeter),能够很方便的实现性能测试回归。提高产率,更少的人力,更低的功耗,更高的生产率;老板怎么爱你都不算多。   另外,前端的性能表现会直接影响到客户体验,前端性能测试也将成为新的性能点,读者可以更深层的了解此方面的知识。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值