性能测试 - 理论

性能测试是通过模拟用户行为评估系统在正常、峰值和异常负载下的响应时间、稳定性及资源利用效率。它涉及到虚拟用户、测试场景、事务、响应时间和TPS等核心概念,用于识别系统瓶颈、调优及容量规划。性能测试对于用户、开发人员和系统管理员均有重要意义,关注点包括稳定性、架构设计、代码性能和资源利用率。
摘要由CSDN通过智能技术生成

简介

性能测试是通过一些自动化的测试工具来模拟用户使用系统,从而检测出系统的各项性能指标,抗压能力如何,一般来说,主要从 正常峰值异常负载等三个方面出发进行测试。

和功能测试的区别

功能测试有着很明确的需求说明,性能测试的影响因素较多,机房、服务器的性能都会对性能测试的结果产生影响,性能测试需求以及目标也很重要。

意义

  1. 评估系统的能力。测试中得到的负荷和响应时间数据可以被用于验证所计划的模型的能力,从而帮忙做出决策。
  2. 识别体系中的弱点。受控的压力可以被增加到一个极端的水平,并突破他,从而修复体系的瓶颈或者薄弱的地方。
  3. 系统调优。重复运行测试,验证调整系统的活动得到了预期的结果,从而改进性能。长时间的测试执行可导致程序发生由于内存泄漏引起的失败,揭示程序中隐含的问题或者冲突。
  4. 验证稳定性可靠性。在一个生产负荷下,执行测试一定的时间,是评估系统稳定性和可靠性是否满足要求的唯一方法。
  5. 通过预埋未来数据,评估未来时间内系统的支撑情况。
  6. 通过节点性能测试,就可以计算生产服务器节点配比。

名词解释

虚拟用户

模拟现实中的实际用户,测试工具会使用虚拟用户来代替真实用户对系统进行操作。

测试场景

测试场景就是一个具体的测试用例,他是测试资源,包括测试脚本,运行设置。运行用户数等的集合,在场景中,可以定义为并发用户的数目,定义要运行的脚本,在一个场景中,可以是单个流程、也可以是多个流程的混合。

事务

是一个流程中某个或者某些环节的称呼,一个流程可以成为一个大的事务,其中大事务中可以包含很多的小失误。

响应时间

指的是用户发出请求 到 看到请求结果的整个过程,计算的是端到端的时间,是衡量性能的重要手段。

平均响应时间

总的交易量除以总的交易时间,通常以秒为单位。

90%响应时间

将所有的响应时间从小到大排列,取排在90%位置的那个值,主要用于衡量系统的稳定性。
eg:
{1,3,5,10,16}
{5,6,7,8,9}
平均响应时间都是7,但是第二组数据的90%响应时间为9.

TPS: transaction per second

每秒的系统交易量,单位是笔/秒,衡量系统处理能力的重要指标,表示一次交易的申请和响应返回的过程。

QPS:query per second

每秒的查询率,是一台服务器每秒能够执行查询的次数,是对查询服务器规定时间内处理流量多少的称量标准。

网络吞吐量

指单位时间内通过网络成功传输的数据量,单位是 byte/s

资源使用率

主要指服务器硬件资源,网络资源等,如cpu,内存使用率,磁盘IO,网络IO等。

思考时间

虚拟用户在与系统进行交互的时候等待的时间,用户模拟真实环境下,用户在使用系统时每一步操作等待的时间。

并发数

指在某一个时间,一定数量的用户同时对系统进行操作,通常性能测试工具可以设置集合点以加强并发点。

性能测试角度

用户

  • 响应时间 - 还要让我等多久
  • 稳定性 - 为什么总是失败

开发

  • 架构设计 - 是否合理
  • 数据库设计 - 是否合理
  • 代码 - 性能问题、内存使用、线程同步操作、资源竞争、算法优化

系统管理员

  • 资源利用率 - 服务器资源使用、数据库使用
  • 可扩展性 - 能否实现扩展、潜在的瓶颈、设备优化
  • 系统容量 - 支持多少用户、最大事务处理量
  • 稳定性 - 连续不间断业务访问

测试人员

测试人员要考虑全面的性能,包括用户、开发、管理员等各个视角的性能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值