JMeter笔记(一)

备注:未经博主允许禁止转载

个人笔记(整理不易,有帮助,收藏+点赞+评论,爱你们!!!你的支持是我写作的动力)

笔记目录学习笔记目录_pytest和unittest、airtest_weixin_42717928的博客-CSDN博客

个人随笔工作总结随笔_8、以前工作中都接触过哪些类型的测试文档-CSDN博客

目录

一:简单了解

二:下载与安装

三:工具了解


一:简单了解

Apache JMeter是基于java的压力测试工具。

JMeter可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。

二:下载与安装

 1:首先要安装jdk

2:jmeter下载地址:Apache JMeter - Download Apache JMeter

(Windows版本下载.zip,Linux版本下载.tgz)

解压后是这样的

backups:脚本备份目录,格式JMX
bin:存放可执行文件、配置文件、模板文件
1)jmeter.bat:windows的启动文件
2)jmeter.log:日志文件
3)jmeter.sh:linux的启动文件
4)jmeter.properties:系统配置文件,源、编码格式、端口等
5)jmeter-server.bat:windows分布式测试要用到的服务器配置,多台测试机运行
6)jmeter-server:linux分布式测试要用到的服务器配置

docs:api文档,可打开index.html 页面查看
extras:存放与第三方的集成构建文件。集成Ant,Jenkins
lib:存放Jmeter依赖的jar包和用户扩展所依赖的jar包;\lib\ext是存放第三方库的
1)JMeter 组件以 Jar 包的形式放罩在 lib/ext 目录下,如果我们要扩展 JMeter 组件,扩展后的 Jar 包即放在此目录下,JMeter 启动时会加载此自录下的 Jar 包
2)JMeter 依赖的一些基础包放在 lib 根目录下,比如我们扩展了 Java 请求,这个扩展是为了完成我们特定的任务,而这个特定的任务程序需要依赖其他的 Jar 包,那么这些 Jar 包就放置在 lib 根目录下
3)JMeter 支持运行 Junit 测试类,其测试包放在 lib/junit 目录下面

licensce:许可证文件

printable_docs
1)demos:常用的Jmeter脚本案例
2)usermanual:用户使用手册;component_reference.html是最常用的核心元件帮助文档

NOTICE:版权声明
README.md:JMeter 简明介绍

 未配置jmeter环境变量时,启动jmeter方法

双击运行出现这个Warning

原因:JMeter未注册表项。解决方法:以管理员身份运行程序的时候会自动创建注册表相关项(下一次就不用了)

启动Jmeter时候,提示信息如下:

================================================================================
Don't use GUI mode for load testing !, only for Test creation and Test debugging.
For load testing, use CLI Mode (was NON GUI):
   jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
& increase Java Heap to meet your test requirements:
   Modify current env variable HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m" in the jmeter batch file
Check : https://jmeter.apache.org/usermanual/best-practices.html
================================================================================

中文翻译如下:

================================================================================
不要使用GUI模式进行负载测试!此模式仅适用于测试创建和测试调试。
对于负载测试,请使用CLI模式(NON GUI模式):
   jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
并且增加Java堆以满足您的测试要求:
在jmeter.bat/jmeter.sh文件修改当前的env变量HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m"
具体请查看官方文档:https://jmeter.apache.org/usermanual/best-practices.html
================================================================================

如果想汉化:

Jmeter 长期汉化(修改后,重启默认为中文简体版)

修改bin下的配置文件 jmeter.properties,加上language = zh_CN 

三:工具了解

使用Jmeter前,先了解常用的组件

1.测试计划:起点。所有组件的容器

2.线程组:代表一定数量的用户,实际的请求内容在Sampler中定义

3.取样器:模拟各种请求

4.逻辑控制器:结合取样器实现一些复杂的逻辑

5.前置处理器:在请求之前的工作

6.后置处理器:在请求之后的工作

7.断言:用于判断请求是否成功

8.定时器:负责在请求之间的延迟间隔

9.配置元件:配置信息

10.监听器:负责收集结果

顺序:

测试计划>线程组>配置元件(Config Elements)>前置处理器(Pro-processors)>定时器(Times)>取样器(请求Sampler)>后置处理器(Post-processors)>断言(Assertions)>监听器(Listeners)

其中作用域的概念:

1、配置元件:影响其作用范围内的所有元件

2、前置处理器:在其作用范围内的每一个 sampler元件之前执行

3、定时器:对其作用范围内的每一个 sampler有效

4、取样器:不和其它元件相互作用,不存在作用域的问题

5、后置处理器:在其作用范围内的每一个 sampler元件之后执行

6、断言:对其作用范围内的每一个 sampler元件执行后的结果执行校验

7、监听器:收集其作用范围的每一个 sampler元件的信息并呈现

8、逻辑控制器:只对其子节点中的取样器和逻辑控制器作用

例子:

查看结果树(监听器)是请求1的子节点,所以只作用与于请求1

循环控制器(逻辑控制器)作用于请求2

聚合报告(监听器)作用于请求1、2、3、4

固定定时器作用于请求1、3、4;请求2由于受到循环控制器的控制,所以不受影响

 循环控制器作用于请求2和随机控制器(逻辑控制器)

随机控制器(逻辑控制器)作用于请求5

响应断言作用于请求3

固定定时器作用于请求4

查看结果树(监听器)请求1、3、4

 结果树1作用于同级的请求1、2

 结果树2作用于同级的请求3、4

结果树3作用于同级组件的子组件

测试计划线程组不属于元件

取样器是不与其他元件发生交互作用的元件(因此不存在作用域问题)

逻辑控制器只对其子节点的取样器和逻辑控制器有效

除取样器和逻辑控制器元件外,其它6类元件,如果是某个取样器的子节点,则该元件对其父节点起作用

除取样器和逻辑控制器元件外,其它6类元件,如果父节点不是取样器,则其作用域是该元件父节点下的其他所有后代节点

(这里我有个疑问:第一个例子,监听器不作用于请求2,和第四点,如果父节点不是取样器,则作用父节点下的后代节点,不就作用请求2了吗??)

前置处理器、后置处理器、断言只对取样器作用,如果他们作用域没有取样器,则不执行

如果同一个作用域内有多个同一类型的元件,则这些元件按照它们在测试计划中的上下顺序依次执行

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小chen小陈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值