前言
jmeter是一款进行接口自动化,性能测试的开源的工具
界面
jmeter菜单里面有个文件--模板,这个主要是一些请求不知道怎么设置时可以选择预制的一些模板
选择对应的模板点击创建,就可以生成一个对应的记录,我们选择jdbc,创建后,就会生成jdbc,填写一些提示的信息
运行菜单配置分布式,需要在bin/jmeter.properties配置中加上另一台宿主机的ip和端口,多台机器ip用逗号隔开
选项菜单---语言,可以设置中文语言,如果需要默认打开是中文的,需要在bin/jmeter.properties文件中#language=en去掉前面的#号把后面的值改成zh_CN,改完后保存重启jmeter,就默认变成中文的
language=zh_CN
工具菜单---创建一个报告,这个可以把jmeter生成一个html的报告,需要在监听器中倒出文件为csv或jtl格式的文件
jmeter自带代理服务器,录制脚本,添加代理设置端口,然后在浏览器也设置对应的端口,添加排除图片,js,css等不必要的请求
bmp|css|js|ico|gif|jpe?g|png|swf|woff|woff2
线程组
线程组是一个元件,是在测试计划下,一个线程组可以看作是一个虚拟用户组,线程组中的每个线程可以看作一个虚拟用户
-
线程组名称:定义线程组的名字
-
注释:线程组的一些解释说明
-
在取样器错误的时候执行的动作
名称 | 说明 | 备注 |
---|---|---|
继续 | 发生错误后继续执行 | 一般压测会出现小范围的错误是可以接受的,一般错误率不超过1%,要求高的(比如:支付)一般在0.001%,也就是保证4个9的成功率默认是继续 |
启用下一个进程循环 | 发生错误后不再执行当前线程后面的请求,会进入下一个线程继续执行 | |
停止线程 | 发生错误后就不再执行当前线程 | 发生错误后,当前用户退出,后面下线程不受影响,一般不会设置这个,这样会线程越来越少,导致测试的负载不够,测试结果不准确 |
停止测试 | 会把当前迭代执行完毕后停止 | |
立即停止测试 | 立即会停止 | 直接停止整个测试 |
-
线程属性
名称 说明 备注 线程数 需要执行多条用户,也就是虚拟用户数 需要注意的是,执行jmeter的机器能不能支撑这么多的线程 ramp-up时间 多长时间启用上面设置的线程数 相当于一个预热时间 循环次数 当前线程需要执行多少次,如果勾选永远,会一直执行下去 same user on each iteration 会每次迭代用同一个线程,如果取消勾选,需在cookie里面勾选每次清理缓存,不勾选的话 same user on each iteration 取消勾选不生效,默认是勾选的,因为每次销毁线程会占用一定资源,也会导致测试不准确 延迟创建线程直到需要 默认是不够选的,勾选的话就是线程运行的时候才被创建,不够选的话就是,所有的线程在创建是就全部启用,保持默认就好 持续时间 设置多长时间,线程就跑多长时间 启动延迟 设置多长时间后开启启动线程
setup线程组
在普通线程组执行之前执行,压测之行准备阶段,准备测试数据,设置测试参数
teardown线程组
在普通线程组执行之后出发的,压测之行结束后清理数据,环境清零
测试计划
独立运行每个线程组,
当勾选这个复选框后,多个线程组会按照从上到下的顺序执行
不勾选这个复选框后,多个线程组同时进行
注:如果是setup线程组和teardown线程组除外,这两个线程组不受任何勾选顺序影响,setup永远在所有的线程组开始之前执行,teardown永远在所有的线程组执行结束后执行
前四个是没有勾选,两个线程组同时执行,后四个是勾选后的,所以先执行完线程组1后在执行线程组2
本文永久更新地址:
https://www.fenxiangbe.com/p/jmeter的界面介绍.html