1.1性能测试相关术语
1.1.1响应时间
响应时间是指应用系统从发出请求开始到客户端接收到所有数据所消耗的时间。
1.1.2 并发用户数
并发用户数是指同一时刻与服务器进行数据交互的所有数据量。
1.1.3 吞吐量
吞吐量是指单位时间内服务器处理用户请求的数量。
吞吐量计算公式:1、系统没有遇到性能瓶颈
吞吐量=(虚拟用户数*每个用户发出的请求数量)/性能测试所用的时间
2、系统遇到了性能瓶颈:吞吐量的值不会随着虚拟用户的增加而增大,而是趋于平衡
1.1.4 吞吐率
吞吐率是指单位时间内从服务器返回的字节数
吞吐率=吞吐量/测试时间
1.1.5 TPS(transaction per second)
表示服务器每秒处理的事物数,它是衡量系统处理能力的重要指标。
1.1.6 点击率
点击率(hit per second)每秒中用户向服务器提交的http数量。防刷新处理
1.1.7资源利用率
资源利用率是指服务器系统中不同硬件资源被使用的程度。资源利用率=资源实际使用量/总的可用资源量
主要包括cpu利用率、内存利用率、磁盘利用率等。
1.1.8 性能计数器(counter)
性能计数器是描述服务器和操作系统性能的一些数据指标。主要通过添加性能计数器来观察系统资源使用情况。性能计数器包括操作系统性能计数器、数据库计数器、应用服务计数器等。
1.1.9 思考时间
思考时间是指用户进行操作时,每个请求之间的时间间隔。
1.2 性能测试划分
性能测试的方法主要包括以下几种:
负载测试(load testing )
压力测试(stress testing)
配置测试(configuration testing )
并发测试(concurrency testing )
可靠性测试(reliability testing )
1.2.1负载测试
负载测试是通过对被测系统不断的加压,直到超过预定的指标或部分资源已经达到饱和状态不再加压为止。
负载测试主要是为了找到系统的最大的负载能力,为性能调优提供数据。该测试方法有以下几个特点:
1)目的:找到系统的最大负载能力
2)手段:对被测系统不断的加压,知道超过预定的指标或部分资源已经达到饱和状态不再加压
1.2.2 压力测试
压力测试是指系统已经达到一定的饱和度(例如cpu、磁盘已经处于饱和),此时系统处理业务的能力,系统是否会出现错误。
该测试方法的特点:
1、目的:测试系统已经达到一定的饱和度(例如cpu、磁盘已经处于饱和),此时系统处理业务的能力
2、手段:通过模拟负载等方法,是系统资源达到一个较高的水平
3、该方法一般用于系统稳定行测试
1.2.3 配置测试
配置测试是通过调整系统软硬件环境,了解不同环境对对系统性能的影响,从而找到系统的最优配置
该测试方法有以下特点:
1、目的:通过调整系统软硬件环境,了解不同环境对对系统性能的影响,从而找到系统的最优配置
2、方法:通过调整系统软硬件环境,是系统处于不同环境下进行测试
3、该方法一般用于系统调优和规划能力
1.2.4并发测试
并发测试只是通过模拟用户并发访问,测试多用户同时访问同一应用、模块和数据,观察是否存在死锁,系统处理速度是否急速下将等其他一些性能问题
该测试方法有以下特点:
1、目的:多用户并发访问时,系统是否可能存在一些并发问题
2、手段:模拟多用户并发访问
1.2.5 可靠性测试
1.3 性能测试的应用领域
性能测试分为四大领域:
1、能力验证
2、规划能力
3、性能调优
4、缺陷发现
1.3.1 能力验证
能力验证是性能测试最常用的一个领域,一般这样描述:某系统是否能在条件A下具备B性能。重点在于验证系统是否具备某种能力。
能力验证有以下特点:
1)要求在一个已经确定的环境下运行
2)需要根据典型场景设设置测试方案与测试用例
1.3.2 规划能力
规划能力与能力验证有相似之处,但有不同之处,能力验证强调的是某种条件下具备什么样的能力,而规划能力体现系统如何如何才能达到要求的性能指标,规划能力通常这样描述:系统如何才能支持未来用户增长的需求
规划能力的特点:
1)对系统能力的一种探索性测试
2)可以了解系统的性能以及系统性能的可扩展性
1.3.3 性能调优
1.3.4 缺陷发现
通过测试的手段来发现系统存在的缺陷。