JavaJMeter专题体系(一)工具不难介绍

一、JMeter 介绍

     Apache
JMeter是百分百纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它能够用来测试静态和动态财富的天性,例如:静态文件,Java
Servlet,CGI Scripts,Java
Object,数据库和FTP服务器等等。JMeter可用于模拟多量载荷来测试一台服务器,网络恐怕目的的健壮性或许分析分歧负载下的总体质量。
   
 同时,JMeter可以辅助您对您的应用程序进行回归测试。通过你创制的测试脚本和assertions来表达你的先后重返了所企盼的值。为了更高的适应性,JMeter允许你拔取正则表明式来创立那些assertions.

 

JMeter与LoadRunner比较

JMeter 是一款开源(有着超人开源工具特点:界面不佳看)测试工具,即使与LoadRunner比较有广大不足,比如:它结果分析能力尚无LoadRunner详细;很它的助益也有那多少个:

    •   开源,他是一款开源的免费软件,使用它你不须求支付任何开支,
    •  
      小巧,比较L福特Explorer的巨大(最新L安德拉11将近4GB),它可怜精致,不必要安装,但必要JDK环境,因为它是行使java开发的工具。
    •  
      作用强大,jmeter设计之初只是二个简便的web质量测试工具,但由此不段的换代扩大,以后能够已毕数据库、FTP、LDAP、WebService等地点的测试。因为它的开源性,当然你也足以依照自身的急需增添它的效率。

 两者最大的界别:jmeter不帮助IP欺骗(jmeter2.5上述的本子有此成效的兑现,点击那里查看),而LRubicon辅助。

 

 

JMeter缺点

  使用JMeter不或许验证JS程序,也不可以印证页面UI,所以要须求和Selenium合营来成功Web2.0利用的测试。 

 

 

贰 、JMeter 下载安装

1)JMeter安装

  1. http://jmeter.apache.org/下载最新版本的JMeter,解压文件到任意目录

2. 安装JDK,配置环境变量JAVA_HOME.

3. 系统要求:JMeter2.11 要求JDK1.6之上的本子支持运营

4. JMeter可以运转在如下操作系统上:Unix,Windows和Open VMS.

5. 防止在一个有空格的路径安装JMeter,这将招致远程测试出现难题。

 

2)JMeter插件安装

1. 插件下载地址: http://jmeter-plugins.org/downloads/all/

2. 插件下载后解压:找到JMeterPlugins-Extras.jar,把JMeterPlugins-Extras.jar放到apache-jmeter-2.12\lib\ext目录。

 

三、JMeter 运行

  1. 进去bin目录运转jmeter.bat运转jmeter

 
 注意:打开的时候会有多少个窗口,JMeter的下令窗口和JMeter的图形操作界面,不得以关闭命令窗口。

2. JMeter的classpath:

 
 就算您想添加任何JA冠道文件到JMeter的classpath中,你不能不复制他们到lib目录中;

 
 即使您付出了壹个JMeter特定组件或有效的jar文件,复制到lib目录下的ext目录中。

3.
开拓未来显得的是普通话,若是您想行使别的语言,比如英文,那么通过菜单选项->接纳语言->英文即可,当然转为中文也是均等操作。

 

四、JMeter 测试安排元件 

开辟Jmeter页面:包含测试安顿+工作台。

① 、Test Plan (测试安排):用来描述贰特性子测试,包含与这一次品质测试全部相关的效益。也就说本的属性测试的装有情节是于依照二个布署的。

右键单击“测试安顿”弹出菜谱:

Java 1

注意

“函数测试格局”复选框,即便被增选,它会使Jmeter记录来自服务器再次来到的各种取样的多少。借使你在测试监听器中甄选1个文书,这么些数额将被写入文件。如若你品尝一个较小的测试来确保Jmeter配置不错并且你的服务器正在重返期望的结果,那是很有用的。那样做的结果就是其一文件会迅速的增大,并且Jmeter的效用会影响。

假如不记录数据到文件,那个选项就不曾两样了。

 

2、Threads (Users)线程 用户

Java 2

虽说有三个添加线程组的选项,名字不等同, 创造之后,其界面是一心相同的。之前的本子只有二个线程组的名字。今后多3个setUp theread Group 与terDown Thread Group

1) setup thread group 

一种非常类型的ThreadGroup的,可用于执行预测试操作。这个线程的作为完全像二个好端端的线程组元件。不一致的是,那么些项目标线程执行测试前开展为期线程组的进行。

setUp Thread Group类似于lr的init.可用于执行预测试操作。

2) teardown thread group. 

一种特有类其他ThreadGroup的,可用以实践测试后动作。那几个线程的表现完全像多个好端端的线程组元件。差别的是,那几个品种的线程执行测试停止后进行期限的线程组。

tearDown Thread Group类似于lr的end.可用于实施测试后动作。

3) thread group(线程组).

     那么些就是我们一般添加运作的线程。通俗的讲一个线程组,,可以用作二个虚拟用户组,线程组中的各个线程都足以清楚为2个虚构用户。线程组中蕴涵的线程数量在测试执行进程中是不会时有发生变动的。

Java 3

线程组:

  名称:就像字面意思,起个有意义的名字就行

  注释:

  线程数:那里选用5

  Ramp-Up
Period:单位是秒,暗许时间是1秒。它钦定了运维全体线程所消费的光阴,比如,当前的设定表示“在5秒内运行多少个线程,每一个线程的间隔时间为1秒”。倘使你需求Jmeter立时运行全数线程,将此设定为0即可

  循环次数:表示各个线程执行多少次呼吁。

 

三 、测试片段(Test Fragment)

    
测试片段成分是控制器上的二个种相当的线程组,它在测试树上与线程组处于3个层级。它与线程组有所差距,因为它不被实施,除非它是1个模块控制器大概是被控制器所引用时才会被执行。

Java 4

 

 

控制器

JMeter有两连串型的控制器:取样器(sample)和逻辑控制器(Logic Controller),用那么些原件来驱动处理二个测试。

4、取样器(Sampler)

   
取样器(萨姆pler)是性质测试中向服务器发送请求,记录响应音讯,记录响应时间的细小单元,JMeter 原生接济各类差异的sampler ,
如 HTTP Request 山姆pler 、 FTP  Request 萨姆pler 、TCP  Request Sampler

JDBC Request 山姆pler 等,各个不同类其他 sampler 可以根据设置的参数向服务器发出不相同类其他哀求。

    在Jmeter的装有Sampler中,Java Request Sampler与BeanShell Requst
Sampler是二种独特的可定制的萨姆pler.

Java 5

 

⑤ 、逻辑控制器(Logic Controller)

   
逻辑控制器,包罗两类无件,一类是用以控制test plan 中 sampler 节点发送请求的逻辑顺序的控制器,常用的有 如果(If)控制器 、
switch Controller 、Runtime Controller、循环控制器等。另一类是用来公司可决定 sampler 来节点的,
如 事务控制器、吞吐量控制器。

Java 6

 

⑥ 、配置元件(Config Element)

   
配置元件(config element)用于提供对静态数据配置的支撑。CSV Data Set config 可以将地方数据文件形成数据池
(Data Pool),而对应于HTTP Request Sampler和 TCP Request 萨姆pler等类型的配制无件则可以修改
萨姆pler的专断认同数据。

  例如,HTTP Cookie Manager 可以用来对 HTTP Request 萨姆pler 的
cookie 举办管理。

     HTTP
请求暗中认可值不会触发Jmeter发送http请求,而只是定义HTTP请求的暗中同意属性。

Java 7

 

7、定时器(Timer)

   
定时器(Timer)用于操作之间设置等待时间,等待时间是性质测试中常用的主宰客户端QPS的伎俩。类似于LoadRunner里面的“思考时间”。
JMeter 定义了Bean Shell Timer、Constant Throughput Timer、固定定时器等不等品类的提姆er。

Java 8

 

八 、前置处理器(Per Processors)

   
前置处理器用于在骨子里的伸手发出以前对将要发生的请求举办非凡处理。例如,HTTP U奔驰M级L重写修复符则可以兑现USportageL重写,当RUL中有sessionID 一类的session新闻时,可以经过该计算机填充发出请求的实际上的sessionID 。

Java 9

 

玖 、前置处理器(Post Processors)

   
前置处理器是用于对萨姆pler 发出请求后得到的服务器响应进行拍卖。一般用来领取响应中的特定数据(类似LoadRunner测试工具中的关联概念)。例如,XPath  Extractor 则能够用来提取响应数据中经过给定X帕特h 值得到的数额;正则表明式提取器,则足以提取响应数据中经过正则表明式获得的多寡。

Java 10

 

10、断言(Assertions)

预感用于检查测试中赢得的照应数额等是还是不是合乎预期,断言一般用来设置检查点,用以保险品质测试进程中的数据交互是不是与预期一致。

Java 11

 

11、监听器(Listener)

这些监听器可不是用来监听系统能源的预制构件。它是用来对测试结果数据进行处理和可视化体现的一系列元件。 图形结果、查看结果树、聚合报告、用表格察看结果都以大家平常利用的预制构件。

Java 12

 

五、工作台

Java 13

在测试中大家恐怕要求目前改变一些零部件,可以把某些内需转移的组件保存在工作毕尔巴鄂,测试成功后再回复,可是切记:不恐怕脱离jmeter.一旦退出jmeter,工作夏洛特的内容就会化为乌有。

1、工作台-非测试元件-Property
Display,
此部件相当于是jmeter.properties的GUI。

Java 14

 

六、帮助

http://jmeter.apache.org/usermanual/component\_reference.html

最好的扶助是:菜单-“帮助”-“帮助”。

Java 15

 

 

到此,我们已经简单驾驭了jmeter的大旨构成原件,大家后序的测试工作相当于应用那么些部件来已毕测试职务。

相关文章