Jmeter(三)测试计划和线程组
一、向百度发送http请求
1、创建测试计划
2、添加线程组,创建测试计划--右键--添加--线程组
3、在线程组内部添加http请求组件,线程组右键--添加--取样器--http请求
4、配置http请求组件,填写协议、服务器或ip
5、添加查看结果树组件,线程组--右键--添加--监听器--察看结果树
6、运行测试计划
线程组是仅次于测试计划的节点,每个请求是基于线程组建立起来的。
action to be token after a sampler error:
continue(默认):在当前线程中,其中一个sampler错误,继续执行下一个sampler,脚本继续执行。
start next thread loop(启动下一个线程循环):demo:一个线程里有三个接口,执行到第二个接口遇到错误,就不执行第三个接口了,直接跳到下一个线程组循环
stop thread:停止线程。有Sampler出现错误,则触发stop thread,在当前Sampler错误处停止运行(循环停止);直到其他线程执行结束完毕。
stop test:停止测试。有Sampler执行有错误,则当前正在执行的Sampler执行完毕后停止测试;还没有执行的Sampler不执行(类似于软停止)
stop test now(立即停止测试):立即停止。当一个Sampler执行出现错误,触发stop test now,则所有的测试工作立即停止执行(类似于硬停止),有正在执行的Sampler,立即停止;还没有执行的Sampler不执行。
(线程组此处的各个属性配置类似于自动化脚本中的容错控制,相对人性化)
线程数:需要启动的线程数量
ramp-up period(in second):每个线程启动的延迟时间;例如:设置为1100个线程,表示系统将在1S结束前启动设置的100个线程;如果有30个线程和120秒的斜坡上升时间,则每个连续的线程将被延迟4秒(摘自官方文档)。(个人理解)例如线程数10,ramp-up period是5s,循环2次,那么意思就是1s会执行2个线程*2次循环,1s并发四次请求
循环次数
delay thread creation until needed(延迟线程创建直到需要):默认不勾选,测试开始的时候,所有线程就被创建完。勾选了此选项,那么线程只会在合适的需要用到的时候创建。
调度器:定时启动,定时结束;与下方的时间输入框结合(当测试开始时,JMeter将在必要时进行等待,直到达到开始时间。在每个周期结束时,JMeter检查是否已经达到结束时间,如果是,则停止运行,否则允许测试继续,直到达到迭代限制。)