目录

jMeter - 监控测试计划( Monitor Test Plan)

在本章中,我们将讨论如何使用JMeter创建测试计划来监控Web服务器。 监测测试的用途如下 -

  • 监视器对压力测试和系统管理很有用。

  • 与压力测试一起使用,监视器提供有关服务器性能的其他信息。

  • 监视器使您可以更轻松地查看服务器性能与客户端响应时间之间的关系。

  • 作为系统管理工具,监视器提供了一种从一个控制台监视多个服务器的简便方法。

我们需要Tomcat 5或更高版本进行监控。 出于测试目的,我们将监控Tomcat 7.0.42服务器。 您可以测试任何支持Java Management Extension(JMX)的servlet容器。 让我们编写一个测试用例来监视Tomcat服务器。 我们首先设置我们的tomcat服务器。

设置Tomcat服务器

我们首先打开Tomcat服务状态。 为此,请编辑用户的配置文件《TOMCAT_HOME》/conf/tomcat-users.xml 。 该文件包含一个tomcat-users部分(注释),如图所示 -

<tomcat-users>
<!--
   <role rolename="tomcat"/>
   <role rolename="role1"/>
   <user username="tomcat" password="tomcat" roles="tomcat"/>
   <user username="both" password="tomcat" roles="tomcat,role1"/>
   <user username="role1" password="tomcat" roles="role1"/>
-->
</tomcat-users>

我们需要更改此部分以添加admin角色,manager,manager-gui并为用户分配“admin”。 修订后的文件如下 -

<tomcat-users>
   <role rolename="manager-gui"/>
   <role rolename="manager-script"/>
   <role rolename="manager-jmx"/>
   <role rolename="manager-status"/>
   <user username="admin" password="admin" roles="manager-gui,manager-script,manager-jmx,manager-status"/>
</tomcat-users>

现在为Linux启动tomcat服务器 /bin/startup.sh,为Windows启动 /bin/startup.bat。 启动后,通过在浏览器中输入以下链接来检查Tomcat监管是否有效 -

http://localhost:8080/manager/status?XML=true

验证窗口出现在浏览器中。 输入关联的tomcat登录名和密码(在我们的例子中是admin)。 然后,浏览器显示Tomcat的执行状态如下 -

Tomcat Manager状态

从上面的截图中,我们可以注意到一些事情 -

  • 在URL中,请注意XML = true (注意区分大小写)允许干净地显示JMeter运行所需的监督Tomcat。

  • 另请注意,默认有两个连接器。 通常使用的AJP连接器与mod_jk Apache HTTPD前端模块和HTTP连接器一起使用,HTTP连接器是通常用于通过端口8080直接访问Tomcat的连接器。

编写JMeter测试计划

让我们通过编写测试计划来监控Tomcat服务器 -

重命名测试计划

  • 单击/home/manisha/apache-jmeter2.9/bin/jmeter.sh打开JMeter窗口。
  • 单击“测试计划”节点。
  • 按照下一步中的说明添加线程组。

添加线程组

  • 右键单击Test Plan 》 Add 》 Threads(Users) 》 Thread Group 。 线程组将添加到“测试计划”节点下。

  • 将循环计数更改为永远(或一些大数),以便生成足够的样本。

监控测试用户

HTTP授权管理器

  • 通过选择“添加”>“配置元素”>“HTTP授权管理器”,将HTTP授权管理器添加到“线程组”元素。 此元素管理浏览器请求的身份验证,以查看Tomcat服务器状态。

  • 选择HTTP授权管理器。

  • 编辑以下详细信息 -

    • Username - admin(取决于tomcat-users.xml文件中的配置)

    • Password - admin(取决于tomcatusers.xml文件中的配置)

    • 其他字段留空。

http授权经理

添加Sampler-HTTP请求

现在我们已经定义了用户,现在是时候定义他们将要执行的任务了。 我们添加HTTP Request元素。

  • 右键单击鼠标按钮以获取“添加”菜单。
  • 选择添加>采样器> HTTP请求。
  • 然后,在树中选择HTTP Request元素。
  • 编辑以下属性,如下图所示 -
  • 在此元素中输入以下详细信息 -
    • Name - 服务器状态

    • Server Name or IP - localhost

    • Port - 8080

    • Path - /经理/状态

    • Parameters - 以大写形式添加名为“XML”的请求参数。 以小写字母赋予值“true”。

    • Optional Tasks - 选中采样器底部的“用作监视器”。

监控测试采样器

添加一个恒定计时器

要定期请求服务器的状态,请添加一个Constant Timer,它将允许每个请求之间的时间间隔。 通过选择Add> Timer> Constant Timer为该线程组添加一个定时器。

在“ Thread Delay框中输入5000毫秒。 通常,使用短于5秒的间隔可能会给服务器增加压力。 在生产环境中部署监视器之前,请确定可接受的时间间隔。

监视常量计时器

添加监听器

您需要添加到测试计划的最后一个元素是监听器。 我们添加了两种类型的监听器。 一个将结果存储在文件中,另一个显示结果的图形视图。

  • 选择线程组元素。

  • 添加Simple Data Writer侦听器添加>侦听器>简单数据写入器。

  • 指定输出文件的目录和文件名(在我们的例子中,它是/home/manisha/work/sample.csv)

监控简单数据编写器
  • 让我们通过选择测试计划元素Add> Listener> Monitor Results来添加另一个监听器。

监控结果

运行测试计划

现在将上述测试计划保存为monitor_test.jmx 。 使用“运行”“启动”选项执行此测试计划。

查看输出

结果将保存在/home/manisha/work/sample.csv文件中。 您还可以在Monitor结果监听器中看到图形结果,如下图所示。

监控测试结果1监控测试结果2

请注意,图表的两侧都有字幕。 左边是百分比,右边是死/健康。 如果内存线快速上升和下降,则可能表示内存抖动。 在这些情况下,最好使用Borland OptimizeIt或JProbe来分析应用程序。 您想要看到的是加载,内存和线程的常规模式。 任何不稳定的行为通常表示性能不佳或某种错误。

↑回到顶部↑
WIKI教程 @2018