JMeter

一、学习工具

1、CinfigElement(HTTP Request Defaults、HTTP Header Manager、HTTP Authorization、CSV Data Set Config、User Defined Variables、JDBC Connection Configuration、HTTP Cookie Manager、Random Variable)

二、协议

1、HTTP协议(消息体数据(json)接口、content-type(四种)、参数(parameter)接口)

2、Webservice协议

3、JDBC协议(JDBC connection Configration、JDBC request、批量造数据)

三、第三方插件

Jm plugin manager(插件安装管理工具)

Jpgc(包含jp@gc的前缀的插件,通常需要在下载)

四、场景设计与运行监控

场景:

  1. Setup thread Group
  2. Thread Group
  3. TearDown Thread Group
  4. Ultimate Thread Group

设计:

  1. Parameter(HTTP传递参数统称如URL、Body Data等)
  2. CSV Data Config
  3. User Defined Variables用户定义变量
  4. User Parameter用户参数
  5. JsonExtractor(能够从JSON格式的数据中提取出所需的信息)

执行:

Cookie Manager(存储从服务器响应中接收到的cookie、在后续的HTTP请求中自动发送存储的cookie、支持自定义cookie策略,如接受所有cookie、拒绝所有cookie或仅接受来自原始服务器的cookie)

Header Manager(自定义HTTP请求的请求头、支持在多个HTTP请求之间共享请求头配置)

Http Sampler(发送GET、POST等HTTP请求、支持URL参数、请求体数据、文件上传等、可以配置请求的超时时间、重定向策略等)

Debug Sampler(输出JMeter属性、变量和系统属性的值,帮助开发者在测试过程中诊断问题)

监控:

View Result Tree

Summary Report

Graph Result

Active Threads Over Time(用于显示测试执行期间并发线程的数量随时间的变化情况。这个图表有助于评估系统在不同负载下的性能表现)

Response Times Over Time (用于显示测试执行期间响应时间的变化情况。这有助于了解系统在不同负载下的响应时间表现。)

Transaction Per Second (是软件测试结果的测量单位,表示一个客户机向服务器发送请求并收到响应的过程。)

Server Agent (监控服务器资源利用率的代理,如指标CPU、内存、磁盘等)

PerfMetrics Collector (监控服务器资源利用率的插件,如指标CPU、内存、磁盘等)

nmon (第三方监控分析工具免费、监控各种指标CPU、内存、磁盘、特点消耗资源少、图形图可分析)

五、分布式环境测试(master-slaves、CLI-mode)

1)原因与需求:

当被测接口需要很高的并发量,单机运行的JMeter很容易因为资源限制(如内存、CPU、网络IO)而出现性能瓶颈,导致测试结果不准确或测试无法顺利进行。此时,需要进行分布式测试解决)

2)原理:

JMeter分布式测试环境搭建时,通常选择一台机器作为调度机(master),其他机器作为执行机(slave)。master负责编辑并分发测试脚本(jmx文件),slave负责执行测试脚本并将结果回传给master,master汇总所有slave的结果并生成最终的测试报告。

3)分布式测试的实现步骤

环境准备:确保所有机器上都安装了相同版本的JMeter和JDK,并配置好环境变量。

配置master:在master机器的jmeter.properties文件中配置远程执行机的IP地址和端口号。

配置slave:在slave机器上启动jmeter-server服务,并确保slave机器可以被master访问。

编写测试脚本:在master机器上编写测试脚本,设置好需要的线程数等参数。

分发与执行:通过master机器的JMeter GUI界面启动测试,master会将测试脚本分发到所有配置的slave机器上执行。

结果汇总:slave机器执行完毕后将结果回传给master,master汇总所有结果并生成测试报告。

六、Jenkins环境测试(ant、build文件修改、CI/CD配置)

  1. 原因与需求:

通过Jenkins搭建JMeter测试环境,可以实现测试的自动化、持续集成和持续部署,提高测试效率和软件质量。

  1. 原理:

Jenkins是一个开源的自动化服务器,它允许你自动化各种任务,如构建、测试和部署软件。

3)分布式测试的实现步骤

安装Jenkins:在服务器上安装Jenkins,并启动Jenkins服务。

安装JMeter插件:在Jenkins中安装JMeter插件,以便能够执行JMeter测试脚本。

配置Jenkins任务:在Jenkins中创建一个新的任务,配置任务以执行JMeter测试。这包括设置测试脚本的路径、测试报告的保存路径等。

配置构建触发器:根据需要配置构建触发器,如定时触发、代码提交触发等,以实现测试的自动化。

执行测试:保存配置后,手动触发或等待触发器自动触发任务执行测试。Jenkins将自动下载JMeter并执行指定的测试脚本。

查看结果:测试执行完毕后,Jenkins会生成详细的测试报告,包括性能指标、图表和趋势分析等,方便开发人员和测试人员进行性能分析和优化。

七、未完成

1、逻辑控制器插件:(事务控制器、仅一次控制器、条件控制器、循环控制器)

Beanshell插件(BeanShell PreProcessor(是一个前置处理器,它在采样器(如HTTP请求)执行之前运行自定义的BeanShell脚本。它允许用户在进行请求之前对数据进行预处理或准备测试数据。)、BeanShell PostProcessor(是一个后置处理器,它在采样器执行之后运行自定义的BeanShell脚本。它允许用户对采样器的响应数据进行处理或进一步分析。)、BeanShell Timer(是一个定时器组件,它允许用户通过编写BeanShell脚本来自定义采样器的等待时间。))

2、跨线程组传参

3、MD5解密

相关推荐
美团测试工程师1 小时前
九大高效的前端测试工具与框架
软件测试·测试工具·jmeter
love静思冥想4 小时前
JMeter 使用详解
java·jmeter
互联网杂货铺1 天前
几个常见的Jmeter压测问题
自动化测试·软件测试·测试工具·jmeter·职场和发展·测试用例·压力测试
ggggyyyyy09281 天前
接口测试-Fidder及jmeter使用
测试工具·jmeter·fiddler·接口测试
明月与玄武1 天前
Jmeter 分布式压测部署--常见坑以及解决方案
分布式·jmeter
字节程序员1 天前
使用JUnit进行集成测试
jmeter·junit·单元测试·集成测试·压力测试
hakesashou2 天前
jmeter怎么调用python
开发语言·python·jmeter
我非夏日2 天前
JMeter配置原件-计数器
jmeter
爱学测试的李木子2 天前
性能】JDK和Jmeter的安装与配置
java·开发语言·软件测试·测试工具·jmeter
rkmhr_sef2 天前
二、Jmeter Web压测
前端·jmeter