Jmeter性能测试|学习笔记

本文涉及的产品
性能测试 PTS,5000VUM额度
简介: 快速学习Jmeter性能测试

开发者学堂课程【高校精品课-厦门大学 -JavaEE 平台技术Jmeter性能测试学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/80/detail/15967


Jmeter性能测试


内容介绍:

一、Jmeter的主要概念

二、JMeter的执行顺序

 

一、Jmeter的主要概念

本节主要讲解如何使用 Jmeter对系统进行性能测试。在该部分中首先介绍什么是Jmeter,Jmeter 是一个基于 java的开源的性能测试工具,在 Jmeter中分为几个主要概念:

1. 测试计划-TestPlan:当我们开始一个性能测试时一定处于测试计划 TestPlan中,在测试计划中描述了一个性能测试所需要的所有的内容。在该测试计划下,首先要建立线程组-ThreadGroup。

2. 线程组-ThreadGroup:是所有测试计划的起点,在线程组中可以设置测试的线程数目,设置测试的时长以及循环的次数。在 ThreadGroup下可以建立多个采样器-Sampler。

3. 采样器-Sampler:用来模拟用户的操作。Sampler 可以模拟向被测试的系统发出http、webservice的请求以及 java的请求等。在测试中最常用的是发出http request 的请求,使用 http request 的 sampler。我们可以将S ampler看作是一个没有界面的浏览器,会向测试的目标发出 http的请求,接收回来的数据。为了知道测试是否符合我们的要求,可以建立断言-Assertion来判断它的返回结果。

4. 断言-Assertion:判断返回结果,例如 http 的 reponse是否符合我们的需求。在做性能测试时往往会在短时间内发出成百上千的请求,不可能逐个查看请求的结果。所以需要看到测试的汇总结果,为了得到测试的汇总结果,可以在 http的request Sampler 下建立 Listener 去收集所有的测试结果。

5. 监听器-Listener:收集所有的测试结果

6. 配置原件-Config Element:在以上最基本的内容之外,Jmeter也提供了一些配置的元件来配置相关信息。定义 CSV的 Data Set的 Config,用来帮助我们从文件中读取测试数据,可以定义 http header的 config(配置元件定义http头的一些数据)在 Jmeter 中可以看到,所有元素都是按照树状结构来定义。某些元素是进行严格分层,例如 ThreadGroup一定只能在测试计划下,Sampler 一定在

ThreadGroup下。但是有一些元件可以任意放在各层,例如 Config Element,但它放在哪个层次下只是对他以下所有的元件都起效果,例如放在TestPlan下,那么它

就会对多个 ThreadGroup 起效果;如果放到 ThreadGroup下就会对多个Sampler起效果;如果放到 Sampler下,那么只会对当前的 Sampler 起效果。

以上是元件的层次结构,执行时前面所说的概念都是按照一定顺序进行执行的。

 

二、JMeter的执行顺序

1. 配置元件-Config Element:首先读取配置元件中的信息

2. 采样器-Sampler:然后是取样器,模拟发出请求

3. 断言-Assertion:

4. 监听器-Listener

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
相关文章
|
16天前
|
测试技术 持续交付 Apache
Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
【10月更文挑战第1天】Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
63 3
|
1月前
|
测试技术 数据库 UED
Python 性能测试进阶之路:JMeter 与 Locust 的强强联合,解锁性能极限
【9月更文挑战第9天】在数字化时代,确保软件系统在高并发场景下的稳定性至关重要。Python 为此提供了丰富的性能测试工具,如 JMeter 和 Locust。JMeter 可模拟复杂请求场景,而 Locust 则能更灵活地模拟真实用户行为。结合两者优势,可全面评估系统性能并优化瓶颈。例如,在电商网站促销期间,通过 JMeter 模拟大量登录请求并用 Locust 模拟用户浏览和购物行为,可有效识别并解决性能问题,从而提升系统稳定性和用户体验。这种组合为性能测试开辟了新道路,助力应对复杂挑战。
86 2
|
9天前
|
测试技术
自动化测试项目学习笔记(五):Pytest结合allure生成测试报告以及重构项目
本文介绍了如何使用Pytest和Allure生成自动化测试报告。通过安装allure-pytest和配置环境,可以生成包含用例描述、步骤、等级等详细信息的美观报告。文章还提供了代码示例和运行指南,以及重构项目时的注意事项。
40 1
自动化测试项目学习笔记(五):Pytest结合allure生成测试报告以及重构项目
|
9天前
|
测试技术 Python
自动化测试项目学习笔记(四):Pytest介绍和使用
本文是关于自动化测试框架Pytest的介绍和使用。Pytest是一个功能丰富的Python测试工具,支持参数化、多种测试类型,并拥有众多第三方插件。文章讲解了Pytest的编写规则、命令行参数、执行测试、参数化处理以及如何使用fixture实现测试用例间的调用。此外,还提供了pytest.ini配置文件示例。
14 2
|
9天前
|
测试技术 Python
自动化测试项目学习笔记(二):学习各种setup、tearDown、断言方法
本文主要介绍了自动化测试中setup、teardown、断言方法的使用,以及unittest框架中setUp、tearDown、setUpClass和tearDownClass的区别和应用。
22 0
自动化测试项目学习笔记(二):学习各种setup、tearDown、断言方法
|
16天前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
【10月更文挑战第1天】告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
45 4
|
1月前
|
缓存 Java 测试技术
谷粒商城笔记+踩坑(11)——性能压测和调优,JMeter压力测试+jvisualvm监控性能+资源动静分离+修改堆内存
使用JMeter对项目各个接口进行压力测试,并对前端进行动静分离优化,优化三级分类查询接口的性能
谷粒商城笔记+踩坑(11)——性能压测和调优,JMeter压力测试+jvisualvm监控性能+资源动静分离+修改堆内存
|
1月前
|
移动开发 JSON Java
Jmeter实现WebSocket协议的接口测试方法
WebSocket协议是HTML5的一种新协议,实现了浏览器与服务器之间的全双工通信。通过简单的握手动作,双方可直接传输数据。其优势包括极小的头部开销和服务器推送功能。使用JMeter进行WebSocket接口和性能测试时,需安装特定插件并配置相关参数,如服务器地址、端口号等,还可通过CSV文件实现参数化,以满足不同测试需求。
167 7
Jmeter实现WebSocket协议的接口测试方法
|
1月前
|
测试技术 持续交付 Apache
Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
【9月更文挑战第10天】随着软件应用的不断扩展,性能测试成为确保系统稳定运行的关键环节。本文通过对比Apache JMeter和Locust,探讨了如何在Python环境中利用这两款工具挖掘更多性能测试潜力。JMeter是一款成熟且功能强大的开源工具,支持多种协议,适用于各种应用的测试;而Locust则基于Python,通过简单脚本模拟HTTP请求,更适合Web应用测试。
76 3
|
1月前
|
消息中间件 监控 测试技术
惊呆了!Python性能测试高手都用这些神器:JMeter+Locust,效率翻倍📈
【9月更文挑战第8天】在软件开发中,性能测试对确保应用稳定性和高效运行至关重要。对于Python开发者而言,选择合适的性能测试工具能显著提升测试效率并精准定位性能瓶颈。本文深入探讨了JMeter和Locust这两款工具的独特优势。JMeter作为跨平台的性能测试工具,支持多种协议,具备高度可定制性和扩展性;而Locust则专为Python应用设计,利用协程实现高并发,提供实时监控和分布式测试功能。两者结合使用,可在实际项目中实现1+1>2的效果,帮助开发者构建全面高效的测试方案,保障应用稳定运行。
106 1