性能测试问题集合(一)

发表于:2018-3-20 11:07

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:非比君    来源:非比测试

  1.如何计算并发用户数?
  通常,计算并发用户数有3种方式:
  1)由TPS(每秒平均事务数,即吞吐量)来估算并发数。适用范围主要是联机操作型系统,比如某宝的订单系统,这类系统响应时间快,业务量大。公式如下:
  Vu =TPS * (RunTime + ThinkTime)
  注:Vu表示业务的虚拟用户数;RunTime是测试脚本运行(迭代)一次所消耗的时间,包括事务时间+非事务时间(事务时间以外的部分,比如进入订单编辑页面,而我们只对订单提交考察其相应时间);ThinkTime业内一般设为3秒,3秒刚好符合用户在页面平均停留的时间。
  2)由在线活动用户数来估算并发数。适用范围主要是读请求多的系统,比如新闻、BBS等。公式如下:
  C=nL/T
  注:C是平均的并发用户数;n是session的数量;L是session的平均长度;T指考察的时间段长度。
  注:C’是峰值并发用户数
  3)根据经验来估算并发数。对于一些无法用公式计算出来的系统来说不失为一种好的办法,通常估算并发用户数为用户数的10%~20%,具体根据经验去调整。
  2.性能测试的分析方法有哪些?
  性能分析是一个大课题,不同的架构、不同的应用场景、不同的程序语言分析的方法都有差异,具体分为两类:
  1)自底向上:通过监控硬件及操作系统性能指标(CPU、内存、磁盘、网络等硬件资源的性能)来分析性能配置、程序等的问题。因为用户请求最终是由计算机硬件设备来完成的,做事的是CPU。
  2)自顶向下:通过生成负载来观察被测试的系统性能,比如响应时间、吞吐量,然后从请求气垫由外及里一层一层分析,从而找到性能问题所在。
  不管是自底向上还是自顶向下,关键点就是生成负载、监控性能指标。对于没有经验的性能测试工作中,提倡自底向上;对于经验丰富的性能测试工作者,先用自顶向下的方式解决明显的性能问题,再结合自底向上的方式分析更深层次的问题。
  3.性能测试“场景设计”中可包含哪几类测试类型?
  如下图所示,可包含:基准测试、配置测试、负载测试、稳定性测试。
  1)基准测试:主要用来验证测试环境、验证脚本正确性、得到系统的性能基准,为后续的测试执行提供参考。基准测试主要采用单业务场景、单用户的方式来执行脚本。
  2)配置测试:帮助分析系统相关性能配置,确保系统的配置适合于当前性能需求,一般场景为混合场景,即多个业务同时执行。测试过程是一个实验过程,先是找出不合理配置,然后进行改进,最后验证,周而复始只到配置满足要求。
  3)负载测试:通过多个不同负载量,帮助我们找出性能问题与风险,对系统进行定容定量,分析系统性能变化趋势,为系统优化、性能调整提供数据支撑。如下图,曲线是常见的性能变化趋势图,①这个点,通常就是我们估算的满足性能需求的点;②这个点达到系统最大吞吐量,通常就是系统拐点;③这个点是系统已经过载,吞吐量已经开始减小。负载测试原则上需要找出这3个点,这需要很多次的执行。
  4)稳定性测试:目的是验证在当前软硬件环境下,长时间运行一定负载,确定系统在满足性能指标的前提下是否运行稳定,执行时采用混合场景。按惯例要求执行时间不低于8小时。稳定性测试原则上是时间越长越好,有些隐藏较深的诸如内存溢出的问题是需要长时间运行才能反映出来的。


上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号