1、安装及配置

在JMeter官网下载,解压得到apache-jmeter-5.0的文件夹,在bin目录下,rgjmeter.bat为打开JMeter的文件;

2、Jmeter的目录结构:

(1) ·bin目录:该目录存放的是Jmeter的主jar包、启动脚本、配置文件等。

·ApacheJMeter.jar:Jmeter的主jar包,Jmeter的启动和该jar包是直接相关的。

 

set HEAP=-Xms1024m -Xmx1024m

HEAP是jvm的堆内存,Xms是最小值,Xmx是最大值。

1、一般来说,最小和最大保持一致。

2、heap的值不要超过物理内存最大值的50%,建议保持在25%左右即可。

3、通常来说,如果物理内存很大,heap值给到4g就足够使用。

·jmeter.properties:Jmeter的主配置文件,Jmeter中超过80%可配置的选项都是通过该文件来实现的。找到language=en,去掉注释 # 号,改为language=zh_CN,设置为中文;如果请求结果中有中文,防止乱码,设置编码格式 sampleresult.default.encoding=UTF-8;

(2)·docs目录:该目录存放的是Jmeter的api文档,主要是用于beanshell脚本、二次开发等场景。

(3)·lib目录:该目录是Jmeter启动时的默认的classpath路径。这就意味着在使用Jmeter进行测试的过程中,所有需要引用(import)的类都必须以jar包的形式存放在该目录下。

·lib\ext目录:该目录是用来存放组件、第三方组件和插件的。

所谓组件和插件就是指继承了Jmeter的GUI框架,能够在GUI界面显示、可见的

(4)·printable_docs目录:该目录存放的是Jmeter官方的帮助文档。

3、Jmeter的脚本的生成(代理模式):

使用jmter自带的http代理服务器录制:推荐的方式。

PS:所有的录制的原理本质上还是抓包、解包,只是这个过程由录制工具来完成。

第一步:右键 测试计划,添加Threads--线程组。

第二步:右键 测试计划,添加配置元件--http cookie管理器。

第三步:右键 测试计划,添加 非测试元件--http代理服务器。

第四步:配置并且启动代理服务器。

·端口:代理服务器的端口,要求在本机未被使用。

查看端口是否被占用,使用命令netstat -an|findstr "端口号"

·https domain:如果要录制的是https的应用,则可以在该处填写应用的服务器地址,比如说:www.baidu.com.

一旦指定,则意味着生成的根证书只能用于该站点,所以一般可以不指定。

·目标控制器:是用来指定所录制的脚本的存放位置,选择第一步所添加的线程组即可

·Type:默认是httpclient4,但是有一些站点不支持,则可以更改为java。

·request filtering:请求过滤,这里可以添加包含和排除模式。

·包含模式和排除模式,都采用的是正则表达式方式。

·可以没有,但是不能写错。

一般来说,常见的写法有两种:

1、通过包含模式,只录制指定的站点的请求。

比如说我们想录制1.2.3.4这个站点有关的请求,则包含模式可以写为:

.*1\.2\.3\.4.*

2、通过排除模式,去除静态资源的请求。

可以直接点击 add suggested excludes按钮添加,不过需要注意的就是,在最后需要添加字符串.*

(?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|woff|woff2).*

最后可以点击启动按钮,会在jmeter的bin目录生成根证书 ApacheJMeterTemporaryRootCA.crt,用于https应用的录制。

点击根证书安装在客户端所在的机器的。并且选择"受信任的根证书颁发机构"。

·第五步:客户端设置通过代理访问被测服务器。

客户端是指客户端程序所在的设备,可能是一台PC,也可能是移动端设备。

·PC:通过internet选项(对所有浏览器有效),连接--局域网设置:

勾选为局域网使用代理。

地址:Jmeter所在的机器地址。

端口:Jmeter所设置的代理端口。

·移动端:首先要保证移动端和Jmeter所在的PC机在同一个局域网。

通过wlan的高级设置,指定Jmeter所在的PC机为代理服务器。

·第六步:在客户端执行要录制的操作。(不要有其它额外的操作)

·第七步:录制完毕,停止代理服务器,还原客户端的代理设置。