性能测试

Posted 4612

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了性能测试相关的知识,希望对你有一定的参考价值。

1、性能测试概念和术语介绍

1.1 并发数(此处是并发用户数)

  • 系统用户数
    该系统的注册用户数
  • 在线用户数
    某一时刻登录系统的用户
  • 并发用户数
    某一时刻向系统发送请求的用户数量
    1)广义并发用户数:用户请求是由不同操作引起的
    2)狭义并发用户数:针对同一个操作向系统发出的请求

1.2 响应时间

  • 响应时间=用户的反应时间+网络传送的时间+系统服务器的处理时间+数据库服务器处理时间
    注意
    1)是一个一来一回的过程,服务器处理完后,通过网络传送返回到浏览器界面
    2)公司中的系统服务器和数据库是部署在不同的电脑上的
  • 响应时间的3/5/10原则
    3s之内有响应—很好
    3-5s之内有响应—好
    5-10s之内有响应—勉强
    10s以上—很差

1.3 事务响应时间(平均事务的响应时间)

  • 系统平均处理一个事务所需要的时间

1.4 每秒事务通过数(平均)—TPS

  • 平均每秒服务器处理事务的数量
  • 对于一个系统而言,TPS是一定的吗?
    是一定的,典型场景:地铁闸口数量一定时,每秒进出的最大的人数是一定的

1.5 点击率(平均)

  • 每秒服务器处理的http请求个数

1.6 吞吐量 (吞吐率)

  • 服务器每秒处理的信息量(byte/s tps http/s)

1.7 思考时间

  • 用户进行操作时,每个请求或者操作之间的时间间隔

1.8 资源利用率

  • 不同资源的使用情况(CPU,GPU,磁盘,网络)

2、性能测试分类介绍

  • 做性能测试的前提
    1)要了解系统需要做什么类型的性能测试
    2)根据具体需要做的性能测试去设计性能测试场景

2.1 基准测试

  • 主要是为了获取系统的各项性能指标,作为一个基准
  • 使用场景:新开发的项目或不了解的项目

2.2 狭义性能测试

模拟大量用户去访问系统的同一个功能,看系统各项的性能指标

2.3负载测试

不断给系统增加负载,查看系统在不同负载指标下系统性能的表现,查看系统性能的拐点,定位系统性能瓶颈(到底是哪里出现了问题)
注意
1) 负载测试包含并发测试容量测试
2)做并发测试和和容量测试的前提 :在一定软硬件环境下

2.3.1并发测试

不断给系统增加用户,查看系统在不同用户数量级别下,系统性能指标的表现,寻找系统的拐点

2.3.2容量测试

不断给系统的数据库增加数据,查看系统在不同数据量的情况下,系统性能指标的表现,寻找系统的拐点

2.4 压力测试(空间换时间)

在高于系统最高负载的情况下,运行一段时间,看系统的各项性能指标的表现,看是否系统会因为高负载出现资源分配不均,锁释放争抢问题等,系统崩溃

2.5 配置测试

在不同的软硬件配置下,查看系统各项性能指标的表现,找到系统性能表现最佳时系统的软硬件配置

2.6 可靠性测试(时间换空间)

在低于系统最高负载下长时间运行系统,看系统是否会出现各种性能问题

2.7 失效恢复测试

给系统很高的负载,看系统崩溃后,看系统的自我修复能力怎么样(是否保存用户数据等)

3、性能测试工具loadrunner

3.1 做性能测试的原理(多用户并发)

多线程模拟用户(虚拟用户)的操作

3.2 什么是集合点,为什么需要集合点

当我们测试多个用户并发时,每个用户执行到该事务脚本的先后顺序是不确定的,所以得到的测试结果也并不是一个完全 并发的极限测试结果。在开始事务之前 ,插入一个“集合点”,那么在多用户执行时,就可以将用户请求停下来(让先初始化的线程等待后面初始化的线程),直到用户数量达到满足的条件(默认是100%的用户都到达集合点)。那么,所有的用户都将同时发出接下来的请求。

3.3 性能测试的过程

3.4 在做系统性能测试的时候,已经知道性能测试的范围,如何选取主要的性能来进行测试?

在测试范围内,选择核心功能中用户经常使用的功能

3.5 注意事项

测试需求决定不同的性能测试类型,不同性能测试类型决定测试场景的各项数据指标的设置

以上是关于性能测试的主要内容,如果未能解决你的问题,请参考以下文章

什么是性能测试?性能测试目的?性能测试的主要分类以及性能测试的常用指标?

性能测试- 性能测试指标:

[性能测试]性能测试建议

性能测试时要求20并发,应用的并发数设置成多少合适

软件性能测试包括哪些

性能测试到底该怎么做?