Jmeter的简介和使用方法

1.Jmeter的简介

Apache JMeter,是Apache组织开发的基于Java的针对功能和性能的测试工具。最初JMeter是为Web/HTTP测试而设计的,但是后来它已经扩展到支持各种各样的测试模块。JMeter可以用于测试静态或者动态资源的性能(如静态文件、Java服务程序、Servlet、CGI脚本、Perl脚本、Java对象、数据库和查询、FTP服务器或者其他资源)。JMeter可以用于模拟对服务器、网络或对象加以巨大的负载,在不同压力类别下测试它们的强度,分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。同时它也提供了一个可替换的界面用来定制数据显示,测试的同步及测试的创建和执行。

其下载地址为: http://jakarta.apache.org。双击D:/JMeter/bin下的jmeter.bat或ApacheJMeter.jar即可开启运行。

2.主要组件介绍

(1)测试计划(Test Plan)

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

(2)线程组(Thread Group)

   代表一定数量的并发用户,它可以用来模拟并发用户发送请求。

(3)取样器(sampler)

   定义实际的请求内容,被线程组包含,我们主要用HTTP请求。

(4)监听器(Listener)

负责收集测试结果,同时也被告知了结果显示的方式。我们常用的包括:聚合报告、察看结果树、用表格查看结果,都支持将结果数据写入文件。其他的添加上去看看就行。

Jmeter的简介和使用方法_第1张图片

(5)逻辑控制器(Logic Controller)

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

其分为循环控制器和事务控制器。

(6)断言(Assertions)

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

(7)配置元件(Config Element)

维护Sampler需要的配置信息,并根据实际的需要会修改请求的内容。我们主要在参数化中用到CSV Data Set Config。

(8)前置处理器(Pre Processors)和后置处理器(Post Processors)

负责在生成请求之前和之后完成工作。前置处理器常常用来修改请求的设置,后置处理器则常常用来处理响应的数据。我们主要在动态关联中用到后置处理器的正则表达式提取器。

(9)定时器(Timer)

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

3.三种脚本生成方式

方式一:直接导入 Badboy所录制脚本

在前面的文章我们讲解了使用badboy进行脚本录制,这里可以直接将其导入到Jmeter中。具体补步骤如下:

(1)打开JMeter会有一个默认的测试计划,点击文件->打开,选中录制的脚本文件如:Baidu_login.jmx,打开脚本进行测试。

(2)在线程组(Thread Group)上添加 监听器->聚合报告(用于分析测试结果)后,点击 运行-启动,开始测试,测试完毕后在聚合报告中就可以看到测试结果。一个简单的测试计划就完成了。

Jmeter的简介和使用方法_第2张图片

方式二:手动编写测试样例

(1)在测试计划中先添加一个线程组,然后在该线程组中加入http请求模块。可以在sampler中看到,Jmeter还能测试数据库连接查询压力,FTP连接压力等。

Jmeter的简介和使用方法_第3张图片

(2)编写测试请求。

Jmeter的简介和使用方法_第4张图片

(3)添加监听等。

(4)设置线程并发量。

Jmeter的简介和使用方法_第5张图片

(5)点击运行,查看运行结果,进行分析。

Jmeter的简介和使用方法_第6张图片
Jmeter的简介和使用方法_第7张图片

即300个并发量中,平均时间是17074毫秒,中间段发出的的请求耗时18891毫秒,末尾百分之90处发出的请求耗时25575毫秒。整个测试过程中,最小耗时为2616毫秒,最大耗时为26911毫秒。

方式三:使用Jmeter工作台录制脚本(待续……)

你可能感兴趣的:(Jmeter的简介和使用方法)