jmeter进行性能测试

在开发复杂的高可用性软件项目时,性能至关重要。 在当今这样的时代尤其如此,除了闪电般的实时数据可访问性之外,其他任何事情都受到惩罚。 当谈论有时需要的大量数据时,这并非总是一件容易的事。

在本文中,我们将使用在线预订引擎作为指导示例。 所有数据均来自单个API。 我们将映射预期的瓶颈,在预期的负载上设置实际方案,并自动执行所有这些操作,以便我们可以始终检查性能。 我们将使用JMeter和BlazeMeter进行此操作。

分析

API上的所有负载可以归为以下三类之一。 我们的预订引擎提供了API调用。 然后,自动化作业会对我们的系统资源产生影响。 这些也由API端点触发。 最后,我们来看API调用,它独立于预订引擎对服务器征税。 换句话说,重要的是要绘制出影响服务器资源的所有因素的图表,因为负责负载的不仅仅是预订引擎。

我们使用Google Analytics(分析)来检查每个API方法当前的页面浏览量。 一年中最繁忙的一天是负载的基础。 如果您期望一定数量的增长,则可以始终将其乘以某个特定因素。 我们还将研究一方面预订引擎与自动任务之间的API调用与其他调用之间的划分。 最好在一年中完成此操作。 所有这些的结果应类似于以下内容:

API调用 百分比 部分
/可用天数 5k 31% 预订引擎
/可用-小时 4k 15% 预订引擎
/重新计算事件 1千 16% 任务
/获取员工 2k 5% 其他

杰米特

我们使用JMeter编写性能测试。 为了从这些数据创建现实的JMeter场景,我们使用了两个附加插件:

  • 加权开关控制器 ,以获取必要的请求。
  • 随机CSV数据集 ,可将CSV列表中的随机参数用于API调用。

最后,该场景如下所示:


该场景中包含三个重复部分。 一些重要方面:

1.使用Random CSV Data Set插件加载随机餐厅ID,以创建不同餐厅的API请求。
2.通过引擎完成预订包含几个连续的步骤。 我们使用来自CSV集合的随机数据和JMeter函数调用这些步骤:


正则表达式提取器将API响应保存在变量中,以用于后续步骤:


3. IF控制器确保仅在满足特定条件时才开始后续步骤。 如果没有,JMeter将开始下一个测试周期,在此我们检查所给随机数据的可用性。 Jexl2表达式用于检查变量是否不为null:


4.在最后一步中,我们使用Response Assertion来检查响应。 如果它不包含“成功”一词,则JMeter进入下一个测试周期:


5.加权开关控制器用于以加权平均值启动自动化任务和其他API调用。 为此,我们使用分析中的百分比。

每个组需要一定数量的用户。 根据您的分析和预期的负载,选择一个有意义的数量。

烈焰仪

BlazeMeter是运行JMeter测试的好工具。 上传方案,插件和数据CSV之后,您可以使用并发用户数量,完成时间和启动时间来配置负载。 最重要的因素是用户数量。 根据JMeter中设置的用户数量,此金额将平均分配给不同的组。 该数量应至少产生您的预期负载。 最后,BlazeMeter还允许您选择流量来源。 它的免费计划允许您每周运行一个这样的计划。


还可以根据您的KPI选择失败条件:


BlazeMeter允许与不同的监视和CI工具集成。 我们自己使用竹子。 有Bamboo插件和全面的指南可帮助您进行集成 。

这样,您可以每周运行一次自动化性能测试(如果升级BlazeMeter订阅,则运行频率会更高)。 这些测试会生成报告,其中包含每个请求的响应和错误的详细概述。

结论

正确进行分析可能是编写性能测试中最重要的部分。 这意味着不仅要从应用程序本身获取预期的负载,还要从其他API调用和影响性能的其他任务中获取负载。 该数据用于创建JMeter场景。 随机数据和加权控制器插件在这里有很大的帮助。 BlazeMeter使您可以运行这些方案并创建直观的报告,以帮助您发现瓶颈和问题。 与您的CI系统集成是一个福音。

性能测试是非常宝贵的工具。 JMeter与BlazeMeter的结合使我们能够定期且始终如一地清除瓶颈和问题。 因此,每个构建都将尽快完成。

翻译自: https://www.javacodegeeks.com/2019/10/performance-testing-with-jmeter.html

jmeter进行性能测试

jmeter进行性能测试_使用JMeter进行性能测试相关推荐

  1. jmeter java性能_使用JMeter进行性能测试(Java请求)

    来源:http://wangym.iteye.com/blog/731729 看了两篇如何使用JMeter在HTTP请求及数据库方面做性能测试的文章(如下两个链接),感受到这款工具的强大及易用.我在这 ...

  2. jmeter之java代码性能测试_松勤软件性能测试-自定义编写的Java测试代码在Jmeter中如何使用...

    原标题:松勤软件性能测试-自定义编写的Java测试代码在Jmeter中如何使用 我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定 ...

  3. jmeter性能测试报告_用 JMeter 做接口测试的优劣浅析

      2018年由软件质量报道做的调查报告表明,受调查的测试人员中约有40.67%的人使用JMeter作为接口测试的自动化测试工具(排在商业化或者开源工具中的第一),剩下的为Postman(28%),以 ...

  4. jmeter 加密解密_使用Jmeter对SHA1加密接口进行性能测试

     机会只留给那些有准备的人 改变能改变的,接受不能改变的,就是进步 性能测试过程中,有时候会遇到需要对信息头进行加密鉴权,下面我就来介绍如何针对SHA1加密鉴权开发性能测试脚本  1.首先了解原理,就 ...

  5. jmeter csv参数化_运用Jmeter参数化来实现接口自动化测试

    本文记录如何使用Jmeter参数化(csv)实现接口自动化--测试Token不同入参情况下,接口请求能够返回正确的结果 1. 首先需要使用Jmeter获取一个Token,如何获取暂略(同一般访问请求方 ...

  6. jmeter性能分析_使用JMeter和Yourkit进行REST / HTTP服务的性能分析

    jmeter性能分析 我的上一篇文章描述了如何使用JMeter完成异步REST / HTTP服务的压力测试或负载测试. 但是,运行这样的测试通常表明被测系统不能很好地应对增加的负载. 现在的问题是如何 ...

  7. jmeter压力测试_用Jmeter实现对接口的压力测试

    一.多个真实用户对接口的压力测试 1. 获取多个真实用户的token的两种方法: 1)第一种:让开发帮忙生成多个token(多个用户账户生成的token),导出为csv格式的文件(以下步骤均以该方法为 ...

  8. jmeter java 关联_使用Jmeter进行数据关联和并发用户

    这是Naresh . 似乎这个博客对初学者和所有人都非常有帮助 . 我选择了Jmeter for Perf . 测试基于Web的应用程序,它是用环境构建的 - Microsoft dot net(带有 ...

  9. dubbo图形化界面搭建_使用 JMeter 进行 Dubbo 性能测试

    1 前言 说道性能测试工具,你会立刻联想到哪一个?ab(ApacheBench).JMeter.LoadRunner.wrk-可以说市面上的压测工具实在是五花八门.那如果再问一句,对 Dubbo 进行 ...

最新文章

  1. 使用windbg查看PE结构
  2. 【控制】《鲁棒控制-线性矩阵不等式处理方法》-俞立老师-第2章-线性矩阵不等式
  3. C语言中的fopen函数
  4. 单元测试(UT)、功能测试(FT)(转)
  5. 插入排序 php,常用的排序算法(二)--插入排序(PHP实现)
  6. 浅谈spring--AOP与IOC / DI
  7. 加密和解码(不同加密方法:随机数,hash,出现次数)
  8. vs C++实现Socket通信、添加ws2_32.lib 静态链接库
  9. 下载chromium for Android
  10. linux企鹅吉祥物的名字,让我来告诉你Linux为何选吉祥物是企鹅
  11. linux设备i2c优先级,Linux设备之I2C
  12. 自学IT 必去的两个学习网站
  13. 让 GitHub 上这几个小游戏帮你找回童真
  14. 小米Note标配版 双网通刷原生安卓7.0教程(详细)
  15. Qter 开发资源大集合
  16. 打破“双十定律”,华为云AI推动超级抗菌药Drug X研发加速
  17. 想学ui设计从哪里入手?基础怎么入门学习UI设计呢?
  18. Vs2017+opencv调用大恒图像相机,实现读存操作
  19. Python入门基础学习笔记
  20. 无穷之旅:关于无穷大的文化史 (伊莱·马奥尔 著)

热门文章

  1. YbtOJ-序列计数【组合数学,莫队】
  2. Wannafly挑战赛10F-小H和遗迹【Trie,树状数组】
  3. 牛客练习赛69C-旅行【结论,最大生成树】
  4. P5496-[模板]回文自动机【PAM】
  5. P3435-[POI2006]OKR-Periods of Words【KMP】
  6. ssl1746-商务旅行【tarjan,LCA】
  7. 2017西安交大ACM小学期 敏感词汇[AC自动机]
  8. json-lib的字符串自动转换坑
  9. uni-app打包h5
  10. 【分享】通过手游赚¥