Jmeter下载安装及基本使用

一、Jmeter下载及安装部署

下载解压JMeter压缩包

下载地址: http://jmeter.apache.org/download_jmeter.cgi

JMeter解压之后,…\apache-jmeter-4.0\bin\jmeter.bat,打开直接使用,无需安装。

下载安装JDK

下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

注意根据Jmeter要求的Java版本来下载对应的JDK。如下图。

环境变量设置

jdk设置:

系统变量新建JAVA_HOME,值为:jdk安装目录,如:C:\Program Files\Java\jdk1.8.0_152

系统变量新建CLASSPATH,值为: %JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

修改系统变量“Path”的值,开始处加上:%JAVA_HOME%/bin

Jmeter设置

系统变量新建JMETER_HOME, 值为Jmeter路径,如:D:\apache-jmeter-4.0

修改CLASSPATH,添加:%JMETER_HOME%/lib/ext/ApacheJMeter_core.jar;%JMETER_HOME%/lib/jorphan.jar;%JMETER_HOME%/lib/logkit-2.0.jar

二、Jmeter基本使用

这部分将以实例来切入,以如何设计一个基本的Jmeter测试脚本,需要解决的几个问题展开:

1. 如何发HTTP请求?

2. 如何灵活读取参数?(另一篇来详解)

3. 如何查看分析结果?

4. 如何进行断言?

5. 如何设置运行场景:用户数,请求次数,请求时间间隔,或持续请求时间等?

6. 如何编写程序处理个性化要求?(Beanshell,另一篇来详解)

如何发HTTP请求?

首先添加线程组,之后添加以下三项:

HTTP请求默认值 (Add->Config element)

HTTP信息头管理器 (Add->Config element)

HTTP请求 (Add->Sampler)

HTTP请求默认值可以设置其作用范围内的所有HTTP的默认值,包括HTTP请求的host、端口、协议等

HTTP信息头管理器,主要用来指定发送请求头,如下图:

当然,如果http请求需要有登录授权做前提,可以添加一个HTTP授权管理器。(Config Element-> HTTP Authorization Manager)

现在回到HTTP请求,进行设置如下图。

注意:“自动重定向”选项适用于当方法为“GET”或“HEAD”的时候

到此处,一个基本的HTTP请求已经配置完了,简单总结下,a)就是HTTP请求需要设置server信息,包括请求的协议(http),请求地址,端口号,HTTP请求的方法(get,post)及请求路径,同时根据需求来设置随请求发送的参数。b)进一步如果一个线程组下设置了多个HTTP请求,这些请求都共享一个Server地址,则可以添加HTTP请求默认值,用来统一设置server信息,主要是协议,server地址,端口号。 c) 最后就是根据请求头(request headers),来设置一个HTTP信息头管理器。

如何分析结果?

添加监听器,常用的:线程组->监听器->聚合报告

Label – Sample的标签.

# Samples – 同名Label的个数

Average – 平均响应时间

Median – 50%的请求所用的时间不超过该值

90% Line - 90%的请求所用的时间不超过该值

Min – 最小响应时间

Max – 最大响应时间

Error % - 错误率

Throughput – 吞吐量,即每秒多少请求

Sent Kb/sec – 吞吐量,每秒多少Kb

还可添加其他监听器:

查看结果树

表格方式查看结果

总结报告

响应时间图

如何进行断言

常用断言:线程组->添加断言->响应断言

注意点:

当模匹配规则为“包括”和“匹配”时,支持正则表达式;当为“Equals”或“Substring”时是完全匹配。

如何设置运行场景?

对线程组进行设置如下:

实际场景中, 可能还需要考虑每个请求之间的时间间隔,称为“思考时间”。可以通过定时器来进行设置。

例如:

固定定时器

高斯随机定时器

定时器的作用域,定时器是在每个sampler之前执行的,而不是之后(无论位置在sampler之前还是下面);当执行一个sampler之前,所有当前作用域内的定时器都会被执行;如果希望定时器仅应用于其中一个sampler,把定时器作为子节点加入;

如果希望在sampler执行完之后再等待,可以使用TestAction。

编写用户程序

我们可能还经常碰到请求需要对参数或结果做一些特殊处理,可能需要用户编写额外的程序。此处推荐使用beanshell, 可以兼容java语言,建议在eclipse调试好代码后,直接复制粘贴过来即可。

Jmeter中Beanshell相关的元器件如下:

BeanShell前置处理器

Beanshell后置处理器

Beanshell断言

Beanshell定时器

猜你喜欢

转载自www.cnblogs.com/ceshi168/p/11964084.html