JMeter 有 2 种运行方式,一种是 CLI,一种是 GUI,本篇文章就来介绍一下后者,图形用户界面,因为后续文章大部分都是基于 GUI 的。

本文演示的是英文版,想用中文的同学可以在菜单栏点击 Choose Language 切换哦:

启动 JMeter (5.3 版本) 后,会看到这样的界面,共 3 个区域:

区域 1 是目录树,区域 2 是元件编辑区,区域 3 是工具栏,界面左上角是菜单栏。

区域1 目录树

目录树,是一个树状结构的目录,根节点只有 1 个,叫做测试计划。每 1 个测试计划就是 1 个 .jmx 测试脚本。

在根节点测试计划下,可以添加线程组、配置元素、监听器、定时器、前置处理器、后置处理器、断言、Test Fragment 等:

在测试计划下,必须添加线程组。因为 JMeter 就是用线程来模拟用户的。

添加了线程组以后,在线程组下可以添加取样器、逻辑控制器、前置处理器、后置处理器、断言、定时器、Test Fragment、配置元素、监听器:

取样器和逻辑控制器在测试计划中不能添加,只能在线程组中添加

接着就可以添加其他元件。

JMeter 在运行时,会从上往下依次遍历元件执行。

区域2 编辑

元件编辑区是用来设置元件的。当在左侧目录树选中某个元件后,右侧的编辑区会切换到当前选中元件的编辑项。

启动 JMeter 后的默认编辑区是测试计划的编辑区,因为启动后只有测试计划根节点。

编辑区是使用 JMeter 时访问最多的一块区域。

区域3 工具栏

5.3 版本的默认工具栏相比老版本简化了,更贴合实际使用需求,一共有 24 个:

  1. 新建测试计划

  2. 基于模板创建测试计划,点击后弹出对话框,选择模板:

  3. 打开 .jmx 脚本文件

  4. 保存当前测试计划为 .jmx 脚本文件

  5. 删除目录树中选中的元件,如果是父节点,那么其子节点也会一同被删除

  6. 复制元件

  7. 粘贴元件

  8. 展开目录树

  9. 收起目录树

  10. 禁用或启用元件,如果是父节点,那么其子节点也会一同被禁用

  11. 启动运行测试计划

  12. 启动运行测试计划,忽略定时器

  13. 停止,直接把所有线程停掉,类似于“杀进程”

  14. 关闭,等当前线程执行完成后结束线程

    “停止”或“关闭”在点击后会弹出相同的对话框,从实际效果来看,停止比关闭更快:

  15. 清除响应数据,比如查看结果树,聚合报告,但不能清除日志控制台

  16. 清除全部数据,包括日志

  17. 查找,点击后弹出查找对话框,支持正则:

  18. 清除查找

  19. 函数助手,在做参数化时会用到,点击后弹出对话框:

  20. 帮助文档

  21. 执行耗时,精度为秒

  22. 错误日志个数,点击后会打开日志控制台

  23. 正在运行线程数 / 总线程数

  24. 运行状态,启动运行测试计划后变绿色

左上角 菜单栏

菜单栏和工具栏有些功能是重叠的,本小节挑选菜单栏特有的功能进行介绍。

File

Edit

选中测试计划、线程组或其他元件,Edit 菜单略有不同,这里以线程组为例进行介绍,其他相差不大:

Search

Run

Options

Tools

基本使用

在打开了 JMeter 的图形界面以后,可以按照以下步骤来使用:

  1. 建立线程组,用线程模拟用户,产生大量负载。
  2. 运行取样器,发起并发请求。
  3. 运行过程中,通过断言验证结果正确性。
  4. 通过监听器记录测试结果。

如果取样器需要参数化,通过配置元件(CSV、函数、自定义变量)或前置处理器(用户参数)来完成。

如果需要做关联(关联:从上一条请求中获取数据,在下一条请求中使用),通过后置处理器(如正则表达式提取)来完成。

如果需要设置场景,比如模拟多少用户,运行多少时间,可以设置线程组编辑项。

如果需要同一时刻发送请求加压,可以使用定时器。

如果需要控制业务的执行逻辑,可以使用逻辑控制器。

简要回顾

本文基于 JMeter 5.3 版本,介绍了 3 个主要界面工作区域。区域 1 是目录树,用于管理元件。区域 2 是编辑区,用于对元件进行配置。区域 3 是工具栏,提供了功能快捷方式。左上角是菜单栏,提供了一些特有功能。最后讲述了 JMeter 的基本使用。

下一篇《JMeter实战(四) 元件作用域》

参考资料:《全栈性能测试修炼宝典JMeter实战》

JMeter实战(三) 界面使用的更多相关文章

  1. Jmeter实战

    Jmeter实战 入门篇 1.下载与使用 下载地址:http://jmeter.apache.org/download_jmeter.cgi 开源,基于java编写,所以得有jdk(jre)环境,下载 ...

  2. Python爬虫实战三之实现山东大学无线网络掉线自动重连

    综述 最近山大软件园校区QLSC_STU无线网掉线掉的厉害,连上之后平均十分钟左右掉线一次,很是让人心烦,还能不能愉快地上自习了?能忍吗?反正我是不能忍了,嗯,自己动手,丰衣足食!写个程序解决掉它! ...

  3. JMeter实战(一) 体系结构

    此为开篇,介绍JMeter的组成结构,阅读后对JMeter形成整体认知和初步印象. 为了便于后续讲解,先明确下2个术语. 元件:如HTTP请求.事务控制器.响应断言,就是一个元件. 组件:如逻辑控制器 ...

  4. coreseek实战(三):全文搜索在php中应用(使用api接口)

    coreseek实战(三):全文搜索在php中应用(使用api接口) 这一篇文章开始学习在php页面中通过api接口,使用coreseek全文搜索. 第一步:综合一下前两篇文章,coreseek实战( ...

  5. 4月27号开学! 第6期《jmeter实战接口自动化+性能》课程,零基础也能学

    2019年 第6期<jmeter实战接口自动化+性能>课程,4月27号开学! 主讲老师:飞天小子 上课方式:QQ群视频在线教学 本期上课时间:4月27号-6月9号,每周六.周日晚上20:0 ...

  6. 【Jmeter基础知识】Jmeter的三种参数化方式

    JMeter的三种参数化方式包括: 1.用户参数 2.函数助手 3.CSV Data Set Config 一.用户参数 位置:添加-前置处理器-用户参数 操作:可添加多个变量或者参数 二.函数助手 ...

  7. 使用Jmeter(三十)针对ActiveMQ JMS POINT TO POINT压力测试(转载)

    转载自 http://www.cnblogs.com/yangxia-test 准备工作 针对JMS类型的Sampler,需要额外的jar包(这里用的是apache ActiveMQ,将下载的AMQ  ...

  8. JMeter非GUI界面运行

    JMeter是一款可以用于做接口可以用于作压力性能的应用程序,该程序是纯Java语音开发,所有对环境支持都比较好. JMeter可以运行模式有两种,一种是UI图形,另一种是命令模式运行也就是非GUI模 ...

  9. jmeter的三种参数化方法

    JMeter的三种参数化方式包括: 1.用户参数 2.函数助手 3.CSV Data Set Config 一.用户参数 位置:添加-前置处理器-用户参数 操作:可添加多个变量或者参数 二.函数助手 ...

随机推荐

  1. 每日一个知识点:Volatile 和 CAS 的弊端之总线风暴

    每日一个知识点系列的目的是针对某一个知识点进行概括性总结,可在一分钟内完成知识点的阅读理解,此处不涉及详细的原理性解读. 一.什么是总线风暴 总线风暴,听着真是一个帅气的词语,但如果发生在你的系统上那 ...

  2. python3-day1

    一.python的优缺点: 先看优点 Python的定位是"优雅"."明确"."简单",所以Python程序看上去总是简单易懂,初学者学Py ...

  3. 智慧矿山-选矿工艺数字 3D 可视化

    前言 现代科技和工业的发展对矿物原料的要求越来越高,直接开采的原矿石往往达不到标准,而原矿通过选矿加工后则可以满足要求.选矿技术在冶金.煤炭.化工.建材和环保等部门都得到应用,对国民经济的发展意义重大 ...

  4. CF538B Quasi Binary 思维题

    题目描述 给出一个数 \(n\),你需要将 \(n\) 写成若干个数的和,其中每个数的十进制表示中仅包含\(0\)和\(1\). 问最少需要多少个数 输入输出格式 输入格式: 一行 一个数 \(n(1 ...

  5. 01Linux系统简介

    Linux 简介 一.介绍 1.1 内容 Linux 的历史,Linux 与 Windows 的区别等知识. 1.2 知识点 linux为何物 linux历史简介 linux重要人物 linux与wi ...

  6. 【题解】Tree

    题目戳我 \(\text{Solution:}\) 考虑点分治.对于这个两点之间,它意味着这点对必须是不一样的. 考虑用双指针统计答案.显然,对于两个数\(a,b\),要让\(a+b=k,a\)越大则 ...

  7. 版本控制系统之git

    一.简介 git是Linux内核项目发起者linus用C语言写的,主要用来做项目的版本控制追踪:git是无中心节点的分布式版本控制系统,也是目前很流行的版本控制系统:其安装简单,使用简单:相比传统的c ...

  8. Java之线程池解析

    线程池 目录 线程池 线程池概述 创建一个线程池并提交线程任务 线程池源码解析 参数认识 构造方法 提交任务 addWorker 执行任务 关闭线程池 线程池概述 什么是线程池 为什么使用线程池 线程 ...

  9. (转载)Quartus II中FPGA的管脚分配保存方法(Quartus II)

    一.摘要 将Quartus II中FPGA管脚的分配及保存方法做一个汇总. 二.管脚分配方法 FPGA 的管脚分配,除了在QII软件中,选择"Assignments ->Pin&quo ...

  10. golang不想http自动处理重定向的解决方案

    目录 前言 解决方案 结论 前言     有时候发送http请求不想让库自动帮忙处理重定向,库里面默认的是会把所有重定向都完成一遍,结果就是最后一个没有重定向的请求的结果.因此需要一种方案直接获取首次 ...