1.几个名词
tps:每秒处理的事务数
rt:响应时间,就是从请求发出到接收到首保的时间
2.经常修改的几个变量
jmeter.bat:设置分配的内存,一般把xmx设置为内存的一半
jmete.properties: 设置返回内容的编码,如果不设置为utf-8,那么返回的中文将会显示乱码
设置负载机的IP地址,用来远程分布式执行
从jmeter2.2开始就不用设置端口号了,只需要增加IP,用逗号隔开
3.分布式执行的步骤
1.负载机上打开jmeter-server.bat
2.本机增加负载机的IP地址,方法如上
3.运行->远程启动,非GUI方式查看相关命令
4.组件的执行顺序
配置元件->前置处理器->定时器->取样器->后置处理器->断言->监听器
如果有两个配置元件,则从上到下执行
5.组件的作用域
逻辑控制器:其下的各种组件
非逻辑控制器:若父元件为取样器,则父+兄弟+子,若父元件为非取样器,则兄弟+子,
7.常用的元件
配置元件:csv,用来读取文件中的内容,并赋值给参数,计数器,给定一个变量递增,可以用来产生唯一值
前置处理器:用户参数,每一列代表一个用户的参数取值,若线程数大于用户数,则循环取值,url重写修饰符,使用get方法时,会把sessionid自动加到URL后面
定时器:同步定时器,达到多少个用户就请求,固定吞吐量定时器,固定tps的大小,固定定时器,高斯定时器
取样器:http请求,jdbc请求,beanshell请求
后置处理器:正则表达式提取器,debug postprocessor,用来调试
断言:size断言,判断返回值的大小,响应断言
监听器:聚合报告,查看结果树,保存响应到文件,一般用来保存下载的文件
控制器:if,switch,foreach,while,loop,仅一次控制器(每个用户只能执行一次,不管多少个循环),事务,吞吐量,随机,交替,随机顺序(一次随机执行完所有的)
8.jar包的存放位置
插件:libext
数据库驱动/beanshell的依赖包:lib
9.beanshell 常用的一些属性
log:输出到控制台的日志内容
ctx:当前运行线程,可以用来设置和提取变量,用于线程间通信
vars:设置/获取jmeter变量
props:设置/获取jmeter属性,在jmeter.properties中可以查看所有变量
sample:当前的请求
以上是我们在使用jmeter时常用到的一些知识点,只是作了一个简单的罗列,每个元件的参数意义可以自行百度下,这些对于完成一些常规的脚本编写还是可以的,但是复杂的就要自己通过beanshell来编写代码或者用第三方的插件,以后会慢慢介绍的