美文网首页
如何使用JMeter进行性能和负载测试

如何使用JMeter进行性能和负载测试

作者: IT赶路人 | 来源:发表于2021-09-06 21:49 被阅读0次

微信公众号-IT赶路人,专注分享与IT相关知识,关注我,一起升职加薪!

JMeter负载测试

JMeter负载测试是使用一个名为Apache JMeter的负载测试工具完成的测试过程,Apache JMeter是一个基于Java的开源桌面应用程序。它还有助于分析高负载下的整体服务器。

JMeter性能测试是使用Apache JMeter测试Web应用程序性能的测试方法。JMeter for Performance Testing有助于同时测试静态和动态资源,有助于发现并发用户JMeter性能测试,包括Web应用的负载测试和压力测试。


105.png

Apache JMeter测试工具在性能测试方面提供以下好处

  • JMeter既可以用来测试静态资源(比如JavaScript和HTML)的性能,也可以用来测试动态资源(比如JSP、Servlet和AJAX)的性能。

  • JMeter可以发现网站可以处理的最大并发用户数

  • JMeter提供各种性能报告的图形分析。

JMeter性能测试包括:

107.png
  • 负载测试:通过模拟多个用户并发访问Web服务来对预期使用情况进行建模。

  • 压力测试:每台Web服务器都有最大负载能力。当负载超过极限时,压力测试的目的是找出Web服务器可以处理的最大负载。

下图显示了JMeter负载测试如何模拟重负载:


109.png

在JMeter中创建性能测试计划

在本教程中,我们将对1000名用户进行baidu.com的性能分析 。在测试目标Web应用程序的性能之前,我们应该确定-

  • 正常负载:访问网站的平均用户数

  • 高负载:访问网站的最大用户数

  • 这次测试的目标是什么?

以下是这个实际示例的路线图


111.png

步骤1) 添加线程组

  1. 启动JMeter

  2. 在树上选择测试计划

  3. 添加线程组

右键单击“测试计划”,添加一个新的线程组:Add->Thread(Users)->Thread Group


113.png

在线程组控制面板中,输入线程属性,如下所示:


115.png
  • 线程数:100(连接到目标网站的用户数:100)

  • 循环次数:10(执行测试次数)

  • 启动期:100

线程计数和循环计数不同。


117.png

启动周期告诉JMeter在启动下一个用户之前要延迟多长时间。例如,如果我们有100个用户和100秒的启动周期,那么启动用户之间的延迟将是1秒(100秒/100个用户)


119.png

步骤2) 添加JMeter元素

现在我们确定此测试中的JMeter元素。这些元素包括

  • HTTP求默认值

可以通过右键单击Thread Group并选择:Add->Config Element->HTTP request Defaults来添加此元素。


121.png

在Http request Defaults控制面板中,输入正在测试的网站名称(http://www.google.com)

123.png
  • HTTP请求

右键单击Thread Group并选择:Add->Sampler->HTTP Request。


125.png

在HTTP求控制面板中,路径字段指示要将哪个URL求发送到Google服务器。


127.png

例如,如果在路径字段中输入“日历”。JMeter将创建指向谷歌服务器的URL求http://www.google.com/calendar

129.png

如果保留路径字段 空白 jeter将创建指向谷歌服务器的url求http://www.google.com。 在此测试中,将路径字段保留为空,以使JMeter创建到Google服务器的http://www.google.com请求。

步骤3) 添加图形结果

JMeter可以将测试结果以Graph格式显示。 右键单击“测试计划”,选择“添加”->“侦听器”->“绘制结果图”


131.png

步骤4) 运行测试并获得测试结果

按工具栏上的Run(运行)按钮(Ctrl+R)开始软件测试过程。将看到测试结果实时显示在Graph上。 下图显示了一个测试计划的图表,其中我们模拟了访问www.google.com网站的100个用户。

133.gif

在图片底部,有以下用颜色表示的统计数据:

  • 黑色:当前发送的样本总数。

  • 蓝色 :当前发送的所有样本的平均值。

  • 红色 :当前标准偏差。

  • 绿色 :吞吐率,表示服务器每分钟处理的求数

让我们在下图中分析一下Google服务器的性能。


135.png

要分析被测Web服务器的性能,应该关注两个参数

  • 吞吐量

  • 偏差

吞吐量是最重要的参数。它表示吞吐量越高,服务器性能越好。 在本次测试中,Google服务器的吞吐量为1491.193/分钟。该值相当高,因此我们可以得出结论,Google服务器具有良好的性能 偏差用红色表示-它表示与平均值的偏差。越小越好。

让我们将Google服务器的性能与其他Web服务器进行比较。这是网站http://www.yahoo.com/的性能测试结果(可以选择其他网站)

137.png

被测网站http://www.yahoo.com的吞吐量为867.326/分钟。这意味着该服务器每分钟处理867.326个求,低于谷歌。 偏差为2689,远高于谷歌(577) 。所以我们可以确定这个网站的性能低于谷歌服务器。

注意:上面的值取决于几个因素,比如Google当前的服务器负载,网速,CPU能力等等。所以不要惊慌!

故障排除:

如果在运行上述方案时遇到此问题.执行以下操作

  1. 检查是否通过代理连接到Internet。如果是,删除代理。

  2. 打开一个新的Jeter实例

  3. 在Jeter中打开PerformanceTestPlan.jmx

  4. 双击线程组->图形结果

  5. 运行测试

浏览网页:https://www.itxiaonv.com/,了解更多IT信息

image

相关文章

  • 使用jmeter进行压测

    使用jmeter进行压测 1. 介绍 Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具...

  • 如何使用JMeter进行性能和负载测试

    微信公众号-IT赶路人,专注分享与IT相关知识,关注我,一起升职加薪! JMeter负载测试 JMeter负载测试...

  • Jmeter进行性能测试时多台负载机的配置方法

    Jmeter进行性能测试时多台负载机的配置方法 标签:jmeter配置多机负载测试 2017-01-25 13:5...

  • Jmeter增加压力机

    Jmeter进行性能测试时多台负载机的配置方法 在进行性能测试时,需要模拟多用户并发访问,但是由于单台负载机模拟用...

  • 性能测试——jmeter的了解和使用

    性能测试 应用:负载测试,压力测试,并发测试,(非性能测试:但是jmeter能做接口测试) 负载测试: 在一定的软...

  • Jmeter

    Jmeter jmeter的工具: 性能测试 负载和压力的区别: 负载测试:在一定的工作负荷下,给系统造成du的负...

  • jmeter

    Jmeter jmeter的工具: 性能测试 负载和压力的区别: 负载测试:在一定的工作负荷下,给系统造成du的负...

  • JMeter JDBC请求测试使用简介

    JMeter是一款使用Java开发的,开源免费的,测试工具, 主要用来做功能测试和性能测试(压力测试/负载测试) ...

  • JMeter体系结构

    JMeter简介 JMeter是一款开源桌面软件,用来模拟用户负载来完成性能测试工作。JMeter可以对web进行...

  • 某次验收会专家问答准备

    专家:性能测试是如何开展?答复:依据需求说明书中规定的性能指标,使用压力测试、负载测试和混合场景测试手段进行了测试...

网友评论

      本文标题:如何使用JMeter进行性能和负载测试

      本文链接:https://www.haomeiwen.com/subject/ypmywltx.html