性能测试|JMeter压测结果分析

本文涉及的产品
性能测试 PTS,5000VUM额度
简介: 性能测试|JMeter压测结果分析

查看结果树

https://ceshiren.com/t/topic/1369.json 发起请求

1、增加线程组、HTTP Request、添加结果树,配置协议、域名、请求地址,如下图所示:

在这里插入图片描述

请求结果如下图所示:

在这里插入图片描述

响应结果默认的是text文本格式

在这里插入图片描述

(1)第一种方式:正则表达式过滤:

#配置id的数据的正则表达式: 
"id":.*?.

在这里插入图片描述

(2)第二种方式:json表达式过滤:

#json表达式 
.post_stream.stream[0]

在这里插入图片描述

聚合报告

一、对 https://ceshiren.com/t/topic/1369.json 发起请求

当我们进行压压力测试完后,最关心就是测试数据了。

1、在分析聚合报告之前,我们先来了解聚合报告都包含了什么内容

  • Aggregate Report(聚合报告)参数:

    • 平均值:平均响应时间,所有请求的平均响应时间。
    • 中位数:50%的用户响应时间不超过这个值。
    • 99% Line: 99%的用户响应时间不超过这个值。
    • Error%:异常百分比。(错误请求的数量/请求的总数)
    • Throughput:吞吐量,默认情况下每秒完成的请求数。
    • Received KB / sec:接收数据。

2、在测试计划(Test Plan)添加线程组、聚合报告(Aggregate Report),在线程组下添加HTTP Request,如下图所示:

在这里插入图片描述

3、发送正确的请求
在这里插入图片描述

成功请求后显示的聚合报告数值:
在这里插入图片描述

4、发送错误的请求
在这里插入图片描述

当我们进行压压力测试完后,最关心就是测试数据了,下面我们一起来分析Jmeter聚合报告数据。聚合报告如下图所示:
在这里插入图片描述

二、对本地python服务发起请求

1、启动一个服务,端口号是8081

在这里插入图片描述

2、在测试计划(Test Plan)添加线程组、聚合报告(Aggregate Report),在线程组下添加HTTP Request,如下图所示:
在这里插入图片描述

3、请求之后会返回信息

在这里插入图片描述

4、在线程组设置循环运行

设置线程数为1,一直循环运行:

在这里插入图片描述

在这里插入图片描述

本地的服务相对比较稳定,设置一直循环运行还没有出现问题

在这里插入图片描述

10个线程同时跑的数值:

在这里插入图片描述

10线程同时运行出现了异常数据:

在这里插入图片描述

5、使用命令行方式查看聚合报告

一般在测试的时候不使用图形化界面,因为会消耗一些的资源,可以使用命令行的方式运行

sh jmeter.sh -n -t test_http.jmx -l test_http.jtl
#-n:不开启图形化界面
#-t:制定测试计划
#-l:指定输出的结果

在这里插入图片描述

打开测试计划的jmx文件,这个需要在图形化界面设置好之后保存下来的。放在jmeter的bin目录下

在这里插入图片描述

请求之后返回的结果,30s刷新一次

在这里插入图片描述

三、对nginx进行压力测试

在docker安装nginx

#拉取nginx:
docker pull nginx:1.17.
#nginx:镜像名字
#1.17.9版本信息

2、 部署nginx

(1)nginx部署方式1:

docker run -d --name nginx -p 8088:80 nginx:1.17.9
#后台运行:d
#端口:8088
#映射端口:80

(2)nginx部署方式2:

# 挂载目录:
docker run -d --name nginx -p 8088:80 -v ${PWD}/nginx/html:/usr/share/nginx/html nginx:1.17.9
#:-v:挂载目录
# ${PWD}/html 其中html是可以修改名称
# /iusr/share/nginx/html 其中html是不可以修改的,这是容器的路径,这个路径一定不能错

3、查看docker进程

docker ps

在这里插入图片描述

4、查看nginx资源使用率

docker stats nginx

在这里插入图片描述

5、编辑测试计划

# 编辑test_http.jmx,test_http.jmx是在本地上传上来的
vim test_http.jmx

在这里插入图片描述

6、 查看聚合报告命令

# 查看聚合报告命令
sh jmeter.sh -n -t test_http.jmx -l test_http.jtl

在这里插入图片描述

对应的列和jmeter界面化是一样的。

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
相关文章
|
2月前
|
缓存 监控 算法
软件测试中的性能瓶颈分析与优化策略
【10月更文挑战第6天】 性能测试是确保软件系统在高负载条件下稳定运行的重要手段。本文将深入探讨性能测试的常见瓶颈,包括硬件资源、网络延迟和代码效率等问题。通过具体案例分析,我们将展示如何识别并解决这些问题,从而提升软件的整体性能。最后,文章还将分享一些实用的性能优化技巧,帮助读者在日常开发和测试中更好地应对性能挑战。
108 3
|
2月前
|
测试技术 持续交付 Apache
Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
【10月更文挑战第1天】Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
164 3
|
3月前
|
监控 测试技术 持续交付
软件测试中的性能瓶颈分析与优化策略
性能瓶颈,如同潜伏于软件深处的隐形障碍,悄然阻碍着系统的流畅运行。本文旨在揭示这些瓶颈的形成机理,剖析其背后的复杂成因,并汇聚一系列针对性的优化策略,为软件开发者提供一套系统性的解决方案。
59 5
|
22天前
|
监控 算法 Java
jvm-48-java 变更导致压测应用性能下降,如何分析定位原因?
【11月更文挑战第17天】当JVM相关变更导致压测应用性能下降时,可通过检查变更内容(如JVM参数、Java版本、代码变更)、收集性能监控数据(使用JVM监控工具、应用性能监控工具、系统资源监控)、分析垃圾回收情况(GC日志分析、内存泄漏检查)、分析线程和锁(线程状态分析、锁竞争分析)及分析代码执行路径(使用代码性能分析工具、代码审查)等步骤来定位和解决问题。
|
22天前
|
并行计算 算法 测试技术
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
52 1
|
1月前
|
缓存 监控 测试技术
全网最全压测指南!教你如何测试和优化系统极限性能
大家好,我是小米。本文将介绍如何在实际项目中进行性能压测和优化,包括单台服务器和集群压测、使用JMeter、监控CPU和内存使用率、优化Tomcat和数据库配置等方面的内容,帮助你在高并发场景下提升系统性能。希望这些实战经验能助你一臂之力!
80 3
|
1月前
|
测试技术 持续交付 Apache
Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
70 3
|
1月前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
53 1
|
2月前
|
缓存 监控 测试技术
软件测试中的性能瓶颈分析与优化策略
本文深入探讨了在软件测试过程中,如何有效地识别和解决性能瓶颈问题。通过对性能瓶颈的定义、分类以及常见原因的分析,结合实际案例,提出了一系列针对性的优化策略和方法。这些策略旨在帮助测试人员和开发人员提高软件的性能表现,确保软件在高负载条件下依然能够稳定运行。
|
2月前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
【10月更文挑战第1天】告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
79 4
下一篇
DataWorks