阅读目录
一、测试计划
可以理解为各种测试元件的容器:
其中:
定义整个测试中使用的重复值(全局变量),一般定义服务器的ip、端口,这样,我们改下值,就可以测试不同的环境了,比如测试环境,灰度环境等;
或者把对应的几个测试环境都设置为变量,后面用哪个,就引用哪个,不过这个引用,最好是在请求默认值中引用,实例参考:
默认不勾选,如果测试计划下游多个启用的线程组,他们并行执行的(也就是混合场景);如果勾选,是顺序执行,即前一个线程组执行完了,才执行下一个线程组,大家可以试一下;相当于LR的group模式;
调试的时候用,会打印更多日志,不勾选,勾选的话很影响性能,会有详细的请求记录,消耗资源;
函数测试模式勾选了,还要把查看结果数写到一个路径下的文件中,函数测试模式才生效:
一般用于添加jar包配合着beanshell使用,注意:lib目录下加入了新的jar包,需要重启jmeter;参考链接中“方式一:把jar包加入到classpath”:
二、线程组
相当于LR中场景设计,可以设置一些并发策略,模拟并发用户发送请求
其中:
1、
默认即可,并发过程中,遇到错误,继续执行下一次请求
2、线程数:并发数
3、
启动所有线程需要的时间,如果线程数是100,这里是10,表示每秒启动10个线程
4、循环数:不勾选永远,则后面的次数生效;类似LR中运行时设置中迭代次数;循环控制器是循环,相当于LR中的for循环
5、调度器:玄幻次数中勾选永远,持续时间就是并发的时间,一般10-15分钟,根据业务实际情况来设置
6、
在当前时间之后的启动延迟时间后开始运行
三、【Sampler】
在线程组下(在测试计划下面不能添加取样器),是被请求内容;
假如请求是:http://192.168.95.130:8580/user/query?name=你好
1、自动重定向:只记录最后跳转请求,会丢失出事请求的Cookie等信息;
2、跟踪重定向:记录整个请求过程所有信息,过程请求为sub-sampler,即子请求
3、
post请求时,使用的Content-Type,文件上传的时候使用;
默认不勾选,此时的Content-Type是application/X-www-form-urlencoded
4、
参数中,如果有特殊字符时(“=”、“&”、“?”等),最好选上“编码”,否则字符串可能会被截断;
5、
自动添加参数名和值之间的等号
6、
发送json,实例参考:
7、
发送文件,实例参考:
8、
上图,客户端实现默认是HttpClient4,也可以从配置文件中看到,当然也可以改配置文件
9、
客户端设置超时时间
10、
jmeter在发出HTTP请求并获得相应的HTML文件内容后,且对该HTML进行分析并获取HTML中包含的所有资源(图片等),默认不选中,此选项和loadrunner中是否下载非html资源类似;
11、
响应保存为32位的MD5加密字符