news 2026/8/8 5:28:42

浅谈web性能测试

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
浅谈web性能测试

什么是性能测试?

web性能应该注意些什么?

性能测试,简而言之就是模仿用户对一个系统进行大批量的操作,得出系统各项性能指标和性能瓶颈,并从中发现存在的问题,通过多方协助调优的过程。而web端的性能测试应该注意的指标有:用户操作的响应时间、系统的吞吐量(TPS)、系统的硬件资源情况(CPU、硬盘、磁盘)、网络资源占用情况等

web性能测试之HTTP请求

关于性能测试中,HTTP请求类的性能指标都需要我们去关注些什么?

响应时间,这里的响应时间一定得是前端+后端的响应时间,我们惯性的思维都是只关注后端服务的响应时间,其实前端的响应时间也是须考虑在内的。

并发测试的相应数据,这部分也得考虑前端数据,这只是一个大概的补充,因为具体的系统需要的数据不一样,其中也不乏包括响应时间。

其中,前端的响应时间都涉及到哪些环节呢?

DNS解析

各种请求的连接

TLS的建立

字节流的发送

另外,后端响应时间涉及的环节:

等待(前端请求)

接收信息流

返回响应数据

这其实就是一个比较完整的web端请求所需要的环节,而响应时间就是指的这个请求的过程所花费的时间。这部分时间就是一个用户在操作的时候所等待的时间,所以用户所能接受的时间范围恰好是性能测试所关注的时间范围。通常用户所能接受的系统响应时间是3-5s,若大于这个时间节点,将会使用户失去耐心,取消对系统的操作。

web性能测试之Jmeter

Jmeter属于一个非常实用的测试工具,在性能测试当中也占有一个非常重要的位置。通常jmeter在性能测试过程中,涉及到的基本是直接对接的后端服务,针对前端的响应基本不会涉及,所以用jmeter来对一个web系统进行性能测试时,很难去捕获到前端的响应数据。但是后端响应数据获取起来非常的便捷,其中就包括:并发数、平均响应时间、错误率、吞吐量等等,如下图:

那么,关于前端的响应数据,我们该用什么方法去获取呢?接下来讲的一种方法,就是利用LR来进行。

web性能测试之Loadrunner

Loadrunner则是属于企业软件,这就奠定了它功能繁多,用途广泛的基础。LR算是一个大型的性能测试工具了,但是平常使用也还是其基本的一些功能。LR在用户界面交互上进行了注重,也就是我们之前提到的前端的响应数据,利用LR能够弥补jmeter无法涉及到的前端响应时间这部分,通过更接近用户对界面的交互,得出前端发起请求到请求发送到后台服务这个过程的响应时间。所以,这前后端两部分的响应时间之和,就是我们基本能够判定一个系统真正响应时间的依据。

web性能测试之响应时间

结合以上提及到的响应时间,它所涉及到的有两个部分,一是前端,二是后端:

关于整体系统压测策略

那提及到系统压测的策略,其实是想提一下怎样去利用单节点和集群这两种方案。通常的压测,都是采用的单节点来进行的,这样“以小见大”的方法不为一个不可采取的方法,但是这其中还是会造成很多的误差。还有就是,单节点的压测容易压低整个系统的性能指标,因为无法充分的利用系统资源。

而集群压测,在环境部署上是一个复杂点,但是能够充分利用系统已有资源,这样得出的数据能够更加真实有效。在有过量的时间时,可以讲单节点和集群的压测数据进行对比,这样就能发现其中存在的差异。

关于性能测试日志

关于性能测试日志

性能测试中,日志是非常能够反应出测试工作中问题所在的一个环节,通过查看日志来定位问题是一个繁杂但是极为可靠的方式。

此类测试中,都会涉及到哪些日志呢?

Jmeter端日志

HTTP端打到Nginx端的日志,这层会涉及到来源IP、请求地址、响应时间等。

Tomcat层日志

Server层日志

关于OS层数据监控

CPU监控

通常的指标是CPU使用率不能超过80%,这样给系统预留一个缓冲的范围。这里提及一点,就是其中涉及到多核CPU的情况,严谨的人会去关注每核CPU的使用情况,因为很多时候多核CPU的利用并不是均衡的,整体的CPU使用情况不能反映出单核的使用情况,容易造成误导。

JVM层监控

这主要是去监控线程,其中包含单线程、多线程,同步线程、异步线程。关于同步线程和异步线程,是一个系统中比较关注的点,假如:一个系统处理事务时,采用的是同步线程,很多事务会等待处理造成阻塞,那么这样的系统处理速度就会受到很大的限制,会被视为一个不合格的系统。

以上算是记录一下从多方面去考虑web性能测试的各个点,从而使测试结果更加真实有效。

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/7 20:35:46

玩转SM16714PHT景观装饰驱动IC(1)

一、概述 1. 芯片简介 SM16714PHT是深圳市明微电子股份有限公司推出的一款单线传输四通道LED驱动控制专用芯片,采用单线归零码SID数据协议。 SM16714PHT可通过芯片内之的电流增益调节功能设置电流2.5mA~40mA,OUT R/G/B/W各32级电流增益(即…

作者头像 李华
网站建设 2026/8/7 20:36:33

云服务器的核心优势

云服务器作为新一代计算服务模式,正逐步替代传统物理服务器成为企业数字化转型的基础设施核心。其通过虚拟化技术整合计算资源,结合网络分布式架构实现弹性扩展,为用户带来远超传统IT架构的综合价值。以下从技术架构、成本控制、业务支撑等维…

作者头像 李华
网站建设 2026/8/7 20:37:08

Qwen3-14B-AWQ:重新定义轻量化大模型效率标准

在2025年AI大模型领域,Qwen3-14B-AWQ以其革命性的14.8亿参数设计和AWQ 4-bit量化技术,正在重塑企业级AI部署的性价比认知。这款来自阿里巴巴通义千问团队的开源模型,不仅将硬件门槛降低至消费级GPU水平,更在性能保持率上实现了97%…

作者头像 李华
网站建设 2026/8/7 16:10:12

Linux环境下的C语言编程(三十九)

三、队列的基本操作&#xff08;接三十八&#xff09;1. 基本数据结构定义#include <stdio.h> #include <stdlib.h> #include <stdbool.h>#define MAX_SIZE 100 // 队列最大容量// 队列结构体定义 typedef struct {int data[MAX_SIZE]; // 存储数据的数组i…

作者头像 李华
网站建设 2026/8/7 17:19:23

毕业设计实战:基于SSM+MySQL的图书商城管理系统设计与实现,从需求到测试全流程拆解,新手也能轻松通关!

毕业设计实战&#xff1a;基于SSMMySQL的图书商城管理系统设计与实现&#xff0c;从需求到测试全流程拆解&#xff0c;新手也能轻松通关&#xff01; 谁懂啊&#xff01;当初做图书商城管理系统毕设时&#xff0c;光“图书表”和“图书收藏表”的外键关联就卡了2天——一开始没…

作者头像 李华