JMeter详细介绍和相关概念

打印 上一主题 下一主题

主题 1982|帖子 1982|积分 5946


JMeter是一款开源的、强盛的、用于进行性能测试和功能测试的Java应用步伐。

本篇承接上一篇 JMeter快速入门示例 , 对该篇中出现的相关概念进行详细介绍。
JMeter测试计划


  • 测试计划名称和注释:整个测试脚本保存的名称,以及对该测试计划的注释。这些自定义内容最好能表达脚本的意义。
  • 用户定义的变量:在测试计划上可以添加用户定义的变量,这些变量相当于是全局变量,一样平常添加一些体系常用的配置。但请注意,如果测试过程中想切换情况或配置,一样平常不建议在测试计划上添加变量,由于不方便启用和禁用。此时,可以直接添加用户自定义变量组件。
  • 线程组设置

    • 独立运行每个线程组:用于控制测试计划中的多个线程组的执行顺序。如果不勾选,则默认各线程组并行、随机执行。勾选后,可以保证线程组按顺序执行。
    • Run tearDown Thread Groups after shutdown of main threads:当线程组停止运行时仍继续运行tearDown线程组。该选项结合线程组的执行配置使用,但一样平常很少用到。

  • 函数测试模式:如果选中了此选项,同时监听组件(如“查看结果树”)配置了保存到一个文件中,那么JMeter会将每次的哀求结果保存到文件中。但此操作比较消耗资源,因此一样平常不建议勾选。
  • 类路径设置:可以添加文件或jar包。此功能最常用于调用外部jar包。当脚本需要调用外部的java文件或jar包时,可以把jar包路径添加到这里,然后在beanshell中直接import进来,并调用jar包中的方法
线程组


  • :线程组可以看作是一个虚拟用户组,线程组中的每个线程都可以理解为一个虚拟用户。这些虚拟用户将并发地执行测试计划中的哀求,从而模拟真实世界的用户行为,对目标服务器进行压力测试。
  • 分类

    • 普通线程组:最常见的线程组范例。可以指定线程数、循环次数、延迟等参数,以控制虚拟用户的并发数和哀求执行方式。
    • setUp线程组:一种特别范例的线程组,通常用于执行预测试操作,如数据预备、登录等。与普通线程组差别,setUp线程组会在其他线程组之前执行。这对于需要在测试开始前进行一些初始化操作的情况非常有效。
    • tearDown线程组:另一种特别范例的线程组,通常用于执行测试后的清算操作,如关闭数据库连接、清算测试数据等。与setUp线程组类似,tearDown线程组会在全部其他线程组执行完毕后执行。

  • 关键参数

    • 线程数:模拟用户数,多个线程用于模拟对服务器的并发访问。
    • Ramp-Up时间:设置启动全部线程需要的时间,即线程从启动到运行再到释放的总时间。在负载测试时,建议将Ramp-Up时间设置大一些,以便让性能曲线平缓,从而更轻易找到瓶颈点。
    • 循环次数:设置线程组中的每个线程循环次数。可以理解为线程的迭代次数或重复发起哀求的次数。

  • 错误处置惩罚:在取样器发生错误后,JMeter提供了多种操作选项,包括继续执行接下来的哀求、启动下一个线程循环、停止当前线程循环、停止全部线程、停止测试计划以及立刻停止测试计划等
取样器

JMeter中的取样器(Sampler)是执行性能测试的关键组件之一,用于模拟用户哀求并收集相应的哀求和相应数据。
常用取样器


  • HTTP哀求取样器 :用于模拟HTTP哀求,测试Web应用步伐的性能。它支持HTTPS协议,可以设置哀求头、参数化、Cookie管理等。
  • Debug Sampler:用于在测试过程中输出调试信息,如哀求的参数、相应的状态码、相应的内容等。这对于调试测试计划或查看哀求和相应的详细信息非常有效。但需要注意的是,Debug Sampler会记载大量的详细信息,大概会导致测试结果文件变得很大,因此不建议在生产情况中使用。
  • 其他取样器:JMeter还提供了其他范例的取样器,如FTP哀求取样器、JDBC哀求取样器等,用于模拟差别范例的哀求。
使用注意事项



  • 配置元件:在使用取样器时,通常需要配置一些元件,如HTTP Cookie管理器、CSV数据文件设置等,以模拟真实用户的哀求情况。
  • 监听器:可以使用监听器查看取样结果,如查看结果树、聚合陈诉等,以便对测试结果进行分析和评估。
  • 作用域:取样器不存在作用域问题,但其他配置元件、定时器、断言等会作用于范围内的取样器。
  • 执行顺序:取样器是按照树上顺序从上到下执行的,因此需要注意取样器的分列顺序
断言

JMeter中的断言是用于验证服务器相应是否精确的测试元素,它会查抄服务器相应中的部分或全部内容,并在相应不符合预期时标记该哀求为失败。以下是对JMeter断言的详细介绍:
一、断言的作用

断言在测试过程中起着至关重要的作用,它相当于查抄点,用于判断体系返回的相应结果是否精确,从而帮助测试职员判断测试是否通过。通过使用断言,可以确保应用步伐的相应满足预期,进步测试的正确性和效率。
二、断言的范例

JMeter提供了多种范例的断言,以适应差别的测试场景和需求。以下是一些常用的断言范例:

  • 相应断言

    • 用于验证服务器返回的相应内容是否符合预期。
    • 可以对相应文本、相应代码、相应信息、相应头、哀求头、哀求数据等字段进行断言。
    • 支持多种模式匹配规则,如包括、匹配、相等、字符串等。

  • JSON断言

    • 专门用于验证相应结果为JSON格式的哀求。
    • 可以使用JSON Path表达式来指定要断言的字段和值。
    • 支持对字段值进行正则匹配或精确匹配。

  • 巨细断言

    • 用于验证服务器相应的巨细是否在指定范围内。
    • 可以对完备相应、相应头、相应的消息体、相应代码、相应信息等字段进行巨细断言。
    • 支持等于、大于、小于、不等于等比较范例。

  • 持续时中断言

    • 用于验证服务器相应是否在指定时间内返回。
    • 可以设置相应时间范围,任何凌驾该范围的相应都将被标记为失败。

  • BeanShell断言

    • 提供了一种自定义断言脚本的方式。
    • 可以使用BeanShell脚本语言编写本身的判断逻辑。
    • 适用于需要复杂逻辑判断的断言场景。

  • 其他断言

    • JMeter还支持其他范例的断言,如XPath断言、比较断言等。
    • 这些断言范例适用于特定的测试场景和需求。

三、断言的配置

在JMeter中配置断言通常需要在测试计划中选择需要添加断言的Sampler,然后右键单击该Sampler并选择“Add”->“Assertions”->相应的断言范例。在断言配置窗口中,可以设置要查抄的字段、匹配规则、预期值等参数。
四、断言的使用注意事项


  • 选择合适的断言范例:根据测试需求和相应格式选择合适的断言范例。
  • 设置合理的匹配规则和预期值:确保匹配规则和预期值能够正确反映预期的相应内容。
  • 注意断言的作用范围:根据需要设置断言的作用范围,如作用于父节点取样器及对应子节点取样器等。
  • 制止太过使用断言:过多的断言会增长测试计划的复杂性和执行时间,因此应合理控制断言的数目和复杂度。
监听器

JMeter监听器是JMeter测试计划中的重要组件,用于收集和显示测试结果。以下是对JMeter监听器的详细介绍:
一、监听器的作用


  • 实时收集数据:监听器可以实时收集JMeter测试执行过程中的数据,包括哀求和相应的各种信息。
  • 显示测试结果:监听器以差别的方式展示收集到的测试结果,如树状布局、表格、图形等,便于测试职员直观了解测试情况。
  • 分析测试结果:通过监听器,测试职员可以对测试结果进行分析和评估,如查看相应时间、吞吐量、错误率等指标,以评估体系的性能表现。
  • 天生测试陈诉:监听器可以天生测试陈诉,汇总测试结果和性能指标,方便团队成员共享和讨论测试结果。
二、监听器的范例

JMeter提供了多种范例的监听器,以适应差别的测试需求和场景。以下是一些常用的监听器范例:

  • 查看结果树:以树状布局组织显示全部取样器的相应。通过查看结果树,可以查看恣意取样器的相应信息,并提供多种差别的视图查看相应结果。但请注意,天生查看结果树需要消耗大量的体系资源(如CPU、内存等),因此在负载测试期间不得使用。
  • 聚合陈诉:为测试中的每个差别名称的哀求创建一个表记载。对于每个哀求,它统计了相应信息并提供哀求计数、最小值、最大值、匀称值、错误率、近似吞吐量(哀求/秒)和每秒千字节吞吐量等关键性能指标。
  • 后端监听器:可以将事务或采样器在某个时间范围内执行的结果发送给外部体系(如Graphite、InfluxDB等),以便进行进一步的分析和可视化。
  • 汇总陈诉:与聚合陈诉类似,但提供了更详细的测试结果汇总信息。
  • 汇总图:以图形的方式展示测试结果汇总信息,便于测试职员直观了解测试趋势和性能瓶颈。
  • 断言结果:用于查看断言的成功和失败数,帮助测试职员定位问题所在。
  • 相应时间图:以图形的方式展示各事务和采样器的相应时间,便于测试职员分析体系相应时间的变化情况。
三、监听器的配置和使用

在JMeter中配置监听器通常需要在测试计划中选择需要添加监听器的Sampler或线程组,然后右键单击并选择“Add”->“Listener”->相应的监听器范例。在监听器配置窗口中,可以设置相关参数,如文件名、输出格式、匹配规则等。
使用监听器时,需要注意以下几点:

  • 选择合适的监听器范例:根据测试需求和场景选择合适的监听器范例。
  • 合理配置参数:根据测试需求合理配置监听器的参数,以确保收集到正确、有效的测试数据。
  • 注意资源消耗:部分监听器(如查看结果树)会消耗大量的体系资源,因此在负载测试期间应谨慎使用。
  • 定期查看和分析测试结果:通过定期查看和分析监听器天生的测试结果,可以实时发现和办理问题,进步测试效率和正确性。



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

三尺非寒

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表