JMeter基础入门之必备 学习.docx

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

JMeter学习笔记

1. 安装JMeter

安装JDK1.4以上版本。

设置环境变量:

在用户变量中,新建变量名“JAVA_HOME”,变量值为:安装JDK的目录,如我的为:

“C:\ProgramFiles\Java\jdk1.5.0;”

再新建变量名为“CLASSPATH”,变量值为:

“%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\bin;”。

在系统变量的“Path”变量值后加上:“%JAVA_HOME%\bin;”。

安装Jmeter,解压“jakarta-jmeter-2.3.2.zip”到E盘根目录下:“E:\jakarta-jmeter-2.3.2”。

设置环境变量:

在用户变量中,新建变量名“JMETER_HOME”,变量值为:“E:\jakarta-jmeter-2.3.2;”。

修改“CLASSPATH”,添加:“%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan

.jar;%JMETER_HOME%\lib\logkit-1.2.jar;”。

运行jmeter:直接打开E:\jakarta-jmeter-2.3.2\bin\jmeter.bat即可。

2.JMeter 的主要测试组件总结如下:

测试计划是使用JMeter进行测试的起点,它是其它JMeter测试元件的容器。

线程组代表一定数量的并发用户,它可以用来模拟并发用户发送请求。实际的请求内容在Sampler中定义,它被线程组包含。

监听器负责收集测试结果,同时也被告知了结果显示的方式。

逻辑控制器可以自定义JMeter发送请求的行为逻辑,它与Sampler结合使用可以模拟复杂的请求序列。

断言可以用来判断请求响应的结果是否如用户所期望的。它可以用来隔离问题域,即在确保功能正确的前提下执行压力测试。这个限制对于有效的测试是非常有用的。

配置元件维护Sampler需要的配置信息,并根据实际的需要会修改请求的内容。

前置处理器和后置处理器负责在生成请求之前和之后完成工作。前置处理器常常用来修改请求的设置,后置处理器则常常用来处理响应的数据。

定时器负责定义请求之间的延迟间隔。

常用测试

本文以这三种节点为例,介绍如何使用JMeter来完成针对于它们的压力测试。

Web服务器

对于大多数的项目来说,并不会自行开发一个Web服务器,因此Web服务器压力测试的对象实际就是--发布到Web服务器中的软件。最简单的Web测试计划只需要三个JMeter的测试元件,如下图:

其中:

在线程组中定义线程数、产生线程发生的时间和测试循环次数。

在http请求中定义服务器、端口、协议和方法、请求路径等。

表格监听器负责收集和显示结果。

这种设置对于包含了安全机制的web应用是不够的,典型的web应用一般都会:

有一个登录页,它是整个应用的入口。当用户登录之后,应用会将用户相关的安全信息放到session中。

有一个filter,它拦截请求,检查每个请求相关的session中是否包含有用户安全信息。如果没有,那么请求被重定向到登录页,要求用户提供安全信息。

在这种配置下应用上面的测试计划,那么除了登录页之外的其它请求都将因为缺少用户安全信息,而使请求实际定位到登录页。如果不加断言,那么在监听器看来所有的请求都是成功。而实际上,这些请求最终都没有到达它们应该去的地方。显然,这种测试结果不是我们所期望的。

为了成功的测试,至少有2种方法:

方法一,去掉程序的安全设置,如filter,使得不需要用户安全信息也能访问受限内容;

方法二,不修改程序,使用JMeter提供的HttpURL重写修饰符或HttpCookie管理器。

对于第一种方法,有其局限性:

需要修改程序配置,如去掉web.x中关于安全filter的设置。需要维护多个版本的web.x,如压力测试和功能测试分别各自的web.x,增加了维护成本,而且有可能会在测试之后忘记将web.x修改回来。

对于一些需要用户安全信息的页面无能为力,如某些业务审计操作需要用户安全信息来记录。因为缺少这样的信息,注定了测试的失败。如果解决为了这个问题进一步的修改程序,那么因为存在多个版本的程序,那么其维护难度将大大增加。

虽然,第二种方法配置难度增加了,但是它不用修改程序。而且还可将测试计划保存成文件,以便重复使用。因此,选用第二种方法是较为理想的做法。下面以一个简化的例子说明使用方法二的配置步骤。

例子由以下几个文件组成:

文档评论(0)

tianya189 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体阳新县融易互联网技术工作室
IP属地上海
统一社会信用代码/组织机构代码
92420222MA4ELHM75D

1亿VIP精品文档

相关文档