为何要有性能指标以及性能测试指标有哪些?

    刚开始,以为做性能测试,就是做些脚本、参数化、关联,压起来之后,再扔出一个结果。

但实际上不止这些内容,还要加上性能分析,关注调优之后响应时间有多大的提升,TPS 有多大的提高,资源有多少的节省。

     我们努力的方向是完整的工程,既要有前期的测试,还要有中间的分析,以及最后的调优,而不仅仅是做做脚本。如果你想把性能测试做好,就不要局限自己的技术范围和认知范围。

【个人思考】

测试准备->性能分析->调优->达成目标

(其实整个性能测试过程都是在不断的进行分析,从环境的部署规划、性能场景的设计、压测过程,测试数据的分析,再到配置或者环境的调优,再压测,再次分析数据,查看优化空间,最终不断接近目标。)

无论是系统、数据库、代码、中间件、存储、网络,你遇到什么问题,都要试着去分析下该如何判断,并考虑如何在后续的过程中进行调优。

性能测试不同于功能测试,功能测试只要求软件的功能实现即可,而性能测试是测试软件功能的执行效率是否达到要求。

例如某个软件具备查询功能,功能测试只测试查询功能是否实现,而性能测试却要求查询功能足够准确、足够快速。但是,对于性能测试来说,多快的查询速度才是足够快,什么样的查询情况才足够准确是很难界定的,因此,需要一些指标来量化这些数据。

     性能测试指标是衡量系统性能的评价标准,常用的系统性能测试指标包括:响应时间、并发用户/并发、点击率、

性能测试中,常用的性能指标可以分为系统性能指标服务器性能指标两大类。 系统性能指标主要包括: - **响应时间**:指从用户发起请求到系统返回结果所需的时间,是衡量系统处理效率的重要指标之一。 - **并发用户/并发**:指同时向系统发送请求的用户数量,用于模拟真实环境下的多用户访问场景。 - **点击率**:单位时间内用户对系统发起请求的次数,常用于Web应用的性能评估。 - **吞吐量**:单位时间内系统能够处理的事务数量,反映了系统的整体处理能力。 - **TPS/QPS**:TPS(Transactions Per Second)表示每秒处理的事务数,QPS(Queries Per Second)表示每秒处理的查询请求数,两者都是衡量系统性能的关键指标。 - **PV/UV**:PV(Page Views)指页面浏览量,UV(Unique Visitor)指独立访客数,这两个指标通常用于评估网站或应用的访问量[^1]。 服务器性能指标主要包括: - **CPU使用率**:指CPU被占用的程度,是衡量服务器处理能力的重要参数。 - **内存占用率**:表示服务器内存被使用的比例,过高可能导致系统性能下降。 - **磁盘IO**:指的是磁盘输入输出操作的速度,是影响系统性能的关键因素之一。 - **系统平均负载**:反映了一段时间内系统的繁忙程度,通常是指系统中处于可运行状态和不可中断状态的进程平均数。 此外,还有一些特定场景下的性能指标,如网络延迟、错误率等,这些也是性能测试中不可或缺的部分。 例如,在进行性能测试时,如果系统未来预期日交易量为117.5万笔/天,按照常规性能测试TPS估算方法计算,峰值交易TPS为80%的交易量在20%的时间内产生,以系统交易时间12小时计算,测试目标TPS为: (117.5万 * 0.8) / (12 * 0.2 * 3600秒) ≈ 109笔/秒[^2]。 通过这些性能指标的监控与分析,可以有效地评估系统的性能表现,及时发现并解决潜在的问题,从而确保系统能够在预期的负载条件下稳定高效地运行。 ### 示例代码 以下是一个使用Python的Locust进行性能测试的简单示例: ```python from locust import HttpUser, task, between class WebsiteUser(HttpUser): wait_time = between(1, 3) @task def load_homepage(self): self.client.get("/") ``` 上述代码定义了一个简单的用户行为,模拟用户访问网站主页的行为。通过运行Locust,可以设置并发用户数并观察系统的响应时间和吞吐量。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值