性能测试工具---Loadrunner(一)

性能测试范围

  • 应用程序是否能够很快的响应用户的要求?
  • 应用程序是否能处理预期的用户负载并有盈余能力
  • 应用程序是否能处理业务所需要的事务数量?
  • 在预期和非预期的用户负载下,应用程序是否稳定
  • 是否能确保用户在真正使用软件时获得舒服的体验

在性能测试中应该关注

  • 并发用户数/吞吐量
  • 平均响应时间
  • 服务器资源占用情况
  • 可靠性、可扩展性
  • 发现引起系统问题的原因,关注采用何种技术提高系统性能
  • 软、硬件配置是否合适(容量规划/硬件选型)

性能测试在功能测试稳定后的中后期进行测试

并发数
系统用户数:简单地说就是该系统的注册用户数。
在线用户数:即登录系统的用户。
并发用户数:是对服务器产生压力的用户。

  • 平均并发用户数为 C = nL/T
  • 并发用户数峰值 C’ = C + 3*根号C

C是平均并发用户数,n是login session的数量,L是login session的平均长度,T是值考察的时间长度C’是并发用户数峰值

响应时间(Reponse Time)
又叫请求响应时间:TTLB(time to last byte),对请求作出响应所需要的时间
网络传输(请求)时间+服务器处理(一层或多层)时间+网络传输(响应)时间。
事务响应时间(Transaction Reponse Time)
事务是指一组密切相关的操作组合。例如一次登录可能包含了多次HTTP请求,如:判断用户是否存在?密码是否正确?是否已登录?登录?等多个HTTP请求。

每秒事务通过数
TPS 是指每秒系统能够处理的事务数。它是衡量系统处理能力的重要指标。
当压力加大时,TPS曲线如果变化缓慢或者有平坦的趋势,很有可能是服务器开始出现瓶颈了。

点击率(Hit Per Second)
每秒点击数代表用户每秒向Web 服务器提交的HTTP请求数。点击率越大,服务器压力越大。这里的点击并不是鼠标的一次点击,一次点击可能有多次HTTP请求。
吞吐量
单位时间内系统处理的客户请求的数量,直接体现软件系统的性能承载能力,一般来说用请求数/秒或是页面数/秒来衡量,从业务的角度,也可以用访问人数/天或是处理的业务数/小时来衡量,从网络的角度来说,也可以用字节数/天来衡量。
思考时间(Think Time)
思考时间就是用户进行操作时,每个请求或者操作之间的间隔时间,是为了更加真实地模拟用户的操作场景。
资源利用率
不同系统资源的使用情况。CPU,Memory,磁盘,网络。
性能测试工具---Loadrunner(一)_第1张图片
X轴代表并发用户数,Y轴代表资源利用率、吞吐量、响应时间。X轴与Y轴区域从左往右分别是轻压力区、重压力区、拐点区。

性能测试的分类

基准测试
有基础的标准,这样能通过对比发现系统的不同点与变化。(基准不是一成不变的)
应用于以下场景:
1)可以在制定的标准下通过基准测试建立一个性能基准,这样以后当系统的环境、参数发生变化之后,再进行一次相同标准下的测试,即可看出变化对性能的影响。
2)系统进行基准测试可以在较早的阶段发现性能问题。
3)某系统从来没有进行过任何性能测试,需要对该系统做一次性能评估作为后续开发调优的参考。
狭义性能测试(Performance Testing)
是通过模拟生产运行的业务压力量和使用场景组合,测试系统的性能能否满足生产系统要求。Performance Testing是一种常见的测试方法,就是在特定的运行条件下验证系统的能力情况。该测试是一种正常的测试,主要
是测试系统正常使用时是否满足要求。在曲线拐点模型的轻压力区
负载测试(Load Testing)
负载测试是在被测系统上不断增加压力,直到各项指标达到饱和,例如“响应时间”超过预定指标或者某种资源使用已经达到饱和状态。这种测试方法可以找到系统的处理极限,为系统调优提供数据。在曲线拐点模型的重压力区
压力测试(StressTesting)
压力测试是测试系统在一定饱和状态下,例如cpu、内存等在饱和使用状态下,系统能够处理的会话能力,以及系统能否会出现错误。压力测试与负载测试有些类似,经常把负载测试描述成压力测试的一种场景-例如增加用户数对系统进行压力测试。压力测试的目的是为了揭露高负载下的问题,例如资源竞争、同步问题、内存泄漏等。在曲线拐点模型的拐点区

负载测试和压力测试两者可以结合进行。
负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。
压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。

并发测试(Concurrency Testing)
并发测试是通过模拟用户的并发访问,测试多用户并发访问同一个应用,同一个模块或者数据记录时是否存在死锁或者其他性能问题。
配置测试(ConfigurationTesting)
配置测试方法是通过被测系统的软/硬件环境的调整,了解各种不同环境对系统性能影响的程度,从而找到各项资源的最优分配原则
失效恢复测试(Failover Testing)
1.失效恢复测试方法是针对有备份和负载均衡的系统设计的,这种测试方法可以用来检验如果系统局部发生故障,用户能否继续使用系统,以及如果这种情况发生,用户将受到多大程度的影响。
2.一般的关键业务系统都会采用热备份或是负载均衡的方式来实现。这种业务系统一般要求有一台或几台服务器出
现问题,应用系统仍然可以正常执行业务。该方法就是在测试中模拟设备故障,验证预期的恢复技术是否可以正常发挥作用
3.不是所有的系统都需要进行这种类型的测试,尤其是并没有明确给出系统需要持续运行指标的系统
大数据量测试:
大数据量测试的两种类型:
1.独立的数据量测试:针对某些系统存储、传输、统计、查询等业务进行大数据量测试
2.综合数据量测试:和压力测试、负载测试、并发测试、可靠性测试相结合的综合测试方案

性能测试实施与管理

性能测试前期准备
测试工具引入
测试方案
测试设计与开发
测试执行与管理
测试分析与调优
测试报告(需含测试结论限制)

软件测试步骤:1.需求分析2.制定方案3.测试用例的设计4.用例实现及的执行5.测试报告

你可能感兴趣的:(软件测试)