自动化测试—从零开始学习JMeter性能测试:详解线程组、监视器、断言等常用组件

本文介绍了JMeter的性能测试,包括线程组设定并发用户和循环信息,监视器如Summary Report、View Results in Table等收集和显示结果,断言如Response Assertion验证响应,以及配置元件如HTTP Header Manager管理头部信息。通过这些组件,可以创建高效性能测试计划,评估系统性能和稳定性。
摘要由CSDN通过智能技术生成

目录

线程组(Thread Group)

监视器(Listener)

Summary Report:显示测试计划结果的汇总信息;

View Results in Table:以表格形式显示每个请求的详细结果;

Aggregate Report:将测试结果按请求进行分组,并显示每个请求的平均响应时间、吞吐量等信息;

Graph Results:生成图表以可视化地表示各种结果。

断言(Assertion)

Response Assertion:检查响应的内容或状态码是否符合预期;

Duration Assertion:检查请求的响应时间是否在可接受范围内;

Size Assertion:检查响应的大小是否符合预期。

配置元件(Configuration Element)

HTTP Cookie Manager:在测试期间管理会话 cookie;

HTTP Header Manager:向请求中添加自定义的头部信息;

CSV Data Set Config:从 CSV 文件中读取数据并将其用作参数。

使用 BeanShell 脚本来动态生成参数

使用正则表达式从响应中提取数据

使用 HTTP Header Manager 添加自定义头部信息

使用 Timer 控制请求之间的延迟时间


 JMeter 是一个用于进行负载测试和性能测试的开源工具。它可以模拟大量用户同时访问某个服务器或网站,以便测试该系统的稳定性和性能。在 JMeter 中,有许多有用的组件来帮助您创建高效的性能测试计划。以下是一些常用的 JMeter 组件及其用途的详细介绍。

线程组(Thread Group)

线程组是每个 JMeter 测试计划中必须包含的组件之一。它定义了并发用户的数量、循环次数和持续时间等信息。在线程组中,您可以设置每个虚拟用户所执行的操作,并为每个操作设置不同的权重。以下是一个简单的线程组示例:

 Thread Group
    Number of threads: 10
    Ramp-up period: 5
    Loop count: 3
        HTTP Request
            Method: GET
            Server Name: example.com
            Path: /index.html

上面的示例表示:在测试期间,将启动 10 个并发用户,每个用户将在 5 秒内启动,然后循环执行 HTTP GET 请求三次,以访问 example.com 的主页。

监视器(Listener)

监视器组件用于收集和显示测试计划的结果。在测试完成后,您可以使用监视器来查看每个请求的响应时间、吞吐量等信息,以便评估系统的性能和稳定性。以下是一些常用的监视器:

  • Summary Report:显示测试计划结果的汇总信息;

  • View Results in Table:以表格形式显示每个请求的详细结果;

  • Aggregate Report:将测试结果按请求进行分组,并显示每个请求的平均响应时间、吞吐量等信息;

  • Graph Results:生成图表以可视化地表示各种结果。

  HTTP Request Defaults
    Server Name: example.com
    Implementation: HttpClient4

  Thread Group
    Number of threads: 10
    Ramp-up period: 5
    Loop count: 3
        HTTP Request
            Method: GET
            Path: /index.html

  Summary Report

上面的示例中,我们添加了一个默认的 HTTP 请求设置(HTTP Request Defaults),并将其设置为使用 HttpClient4 实现。然后,我们创建了与前面相同的线程组和 HTTP 请求,并添加了一个汇总报告作为监视器来查看测试结果。

断言(Assertion)

断言组件用于验证服务器的响应是否符合预期。例如,您可以使用断言来检查页面是否包含特定的文本或状态码是否正确。如果断言失败,则 JMeter 将抛出一个异常并标记该请求为失败。以下是一些常用的断言:

  • Response Assertion:检查响应的内容或状态码是否符合预期;

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值