前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >性能测试|JMeter压测结果分析

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

原创
作者头像
霍格沃兹测试开发Muller老师
发布2023-01-12 17:17:03
1.5K0
发布2023-01-12 17:17:03
举报

查看结果树

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

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

在这里插入图片描述
在这里插入图片描述

请求结果如下图所示:

在这里插入图片描述
在这里插入图片描述

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

在这里插入图片描述
在这里插入图片描述

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

代码语言:txt
复制
#配置id的数据的正则表达式: 
"id":.*?.
在这里插入图片描述
在这里插入图片描述

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

代码语言:txt
复制
#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、使用命令行方式查看聚合报告

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

代码语言:txt
复制
sh jmeter.sh -n -t test_http.jmx -l test_http.jtl
#-n:不开启图形化界面
#-t:制定测试计划
#-l:指定输出的结果
在这里插入图片描述
在这里插入图片描述

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

在这里插入图片描述
在这里插入图片描述

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

在这里插入图片描述
在这里插入图片描述

三、对nginx进行压力测试

在docker安装nginx

代码语言:txt
复制
#拉取nginx:
docker pull nginx:1.17.
#nginx:镜像名字
#1.17.9版本信息

2、 部署nginx

(1)nginx部署方式1:

代码语言:txt
复制
docker run -d --name nginx -p 8088:80 nginx:1.17.9
#后台运行:d
#端口:8088
#映射端口:80

(2)nginx部署方式2:

代码语言:txt
复制
# 挂载目录:
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进程

代码语言:txt
复制
docker ps
在这里插入图片描述
在这里插入图片描述

4、查看nginx资源使用率

代码语言:txt
复制
docker stats nginx
在这里插入图片描述
在这里插入图片描述

5、编辑测试计划

代码语言:txt
复制
# 编辑test_http.jmx,test_http.jmx是在本地上传上来的
vim test_http.jmx
在这里插入图片描述
在这里插入图片描述

6、 查看聚合报告命令

代码语言:txt
复制
# 查看聚合报告命令
sh jmeter.sh -n -t test_http.jmx -l test_http.jtl
在这里插入图片描述
在这里插入图片描述

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 查看结果树
  • 聚合报告
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档