Jmeter脚本是基于一个测试计划,描述一系列Jmeter 运行时要执行的步骤,包含一个或者多个线程租,取样器,逻辑控制器,前/后置处理器,断言,定时器,配置元件,监听器等。
一、工具栏
(1)新建: 新建测试计划
(2)模板
(3)打开脚本
(4)保存
(5)剪切
(6)复制
(7)粘贴
(8)全部展开: 展开目录树
(9)全部折叠: 收起目录树
(10)切换: 切换启用/禁用
(11)运行: 执行脚本
(12)不停顿开始
(13)停止: 立即停止脚本
(14)关闭
(15)清除: 清除当前选中结果树或聚合报告等历史结果
(16)清除全部: 清除当前测试计划所有结果树,聚合报告等历史结果
(17)查找
(18)重置搜索
(19)函数助手对话框
(20)帮助
(21)计时
(22)报错数
(23)运行中线程数/运行线程总数
(24)运行中展示
二、测试计划
名称/注释:整个测试脚本保存的名称及对该测试计划的注释,可自定义。
用户定义的变量:添加用户自定义变量,为全局变量。一般不建议在测试计划上添加,因为不方便启用/禁用,可直接添加用户自定义变量配置元件。
独立运行每个线程组:用户控制多个线程组执行顺序。勾选时,线程组执行顺序:由上而下,即前一个执行完后启动下一个;不勾选时,默认各线程组并行,随机执行。
主线程结束后运行tearDown线程组:测试任务线程组运行结束后,运行tearDown线程组。
函数测试模式:勾选时,jmeter会记录来自服务返回的每个取样数据,在监听器中选择一个文件,数据会被写入此文件。若不记录到文件,此选项无意义。不建议使用,影响性能。
添加目录或jar包到ClassPath:需调用外部Java文件或者jar包,可由此处添加。
三、线程组
1、setUp线程组
与普通线程组完全相同,不同的是执行顺序:在普通线程组执行前被触发
应用场景:数据库连接,登录,注册等
2、teatDown 线程组
与普通线程组完全相同,不同的是执行顺序:在普通线程组执行后被触发
应用场景:关闭数据库连接,退出等
默认情况下,如果测试按预期完成,则TearDown线程组将不会运行。若要运行,则测试计划勾选复选框-主线程结束后运行tearDown线程组。
3、线程组 (常用)
名称/注释:线程组名称及注释,可自定义
在取样器错误后要执行的动作:
– 继续:忽略错误,继续执行
– 启动下一进程循环:忽略错误,线程当前循环停止,执行下一循环
– 停止线程:停止当前线程组,不影响其他线程组
– 停止测试:当前线程执行完毕后,停止当前整个测试计划
– 立即停止测试:立即停止,当前正执行取样器会被中断
线程属性:
– 线程数:并发数
– Ramp-UP时间(秒):启动所有线程所需要的时间
– 循环次数:永远/设置循环次数
– 延迟创建线程直到需要:未勾选,一开始创建所有线程;勾选时,线程只在被需要合适的时候被创建
– 调度器:勾选使用调度器,可对线程组进行调度时间配置
持续时间(秒):控制测试执行持续时间
启动延迟(秒):控制测试在多久后启动执行
四、取样器
模拟用户操作向服务器发送请求,用监听器可查看请求结果,用断言验证响应结果是否符合预期。
1、HTTP请求
名称:请求名称,可自定义
协议:http/https ,不填默认http
服务器名称或IP:Web服务器的域名或IP地址
端口:Web服务器使用的端口,不填默认80
方法:GET/POST, 其他支持HEAD, TRACE, OPTIONS, PUT, DELETE, PATCH, COPY, LOCK,