jmeter(1)、安装和代理设置
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机为代理服务器。
·第六步:在客户端执行要录制的操作。(不要有其它额外的操作)
·第七步:录制完毕,停止代理服务器,还原客户端的代理设置。