百摩网
当前位置: 首页 生活百科

性能测试需要使用哪些工具(一定要看的性能测试之脚本模板整理)

时间:2023-07-30 作者: 小编 阅读量: 8 栏目名: 生活百科

若单机并发数超过500且控制在5000内,则可选择Loadrunner。对测试人员而言,性能测试的需求来自于用户、开发、运维的三方面。用户和开发关注的是与业务需求相关的产品指标,运维人员关注的是与硬件消耗相关的资源指标。在LightLoad和HeavyLoad两个区域交界处的并发用户数,我们称为“最佳并发用户数”,而HeavyLoad和BuckleZone两个区域交界处的并发用户数则称为“最大并发用户数”。所以我们应该保证最佳并发用户数要大于系统的平均负载。性能测试通过标准1.所有计划的

1、脚本模板

2、 场景模板

性能测试工具选择

1. 数据建模工具

DataFactory是一种强大的数据产生器,它允许开发人员和QA很容易产生百万行有意义的正确的测试数据库,该工具支持DB2、Oracle

、 Sybase、SQL Server数据库,支持ODBC连接方式,无法直接使用MySQL

数据库,可间接支持。

2. 脚本开发工具

(1) 若考虑脚本运行效率,则可考虑底开发语言C或支持异步通信的语言JS,我们可以分别选择:Loadrunner 或 Node.js

的IDE环境进行开发。

(2) 若考虑脚本开发效率,则可考虑代码复用性,可以选择面向对象语言C#或Java,为此我们可以分别选择:VS2008及以上版本对应LR.NET

控件 或者 Eclipse4.0及以上版本JDK1.7及以上版本。

3. 压力模拟工具

(1) 若为Java类接口且单机并发数控制在500内,则可选择Jmeter或者 Loadrunner。

(2) 若为WebService类接口且单机并发数控制在500内,则可选择SoapUI或者Loadrunner。

(3) 若单机并发数超过500且控制在5000内,则可选择Loadrunner。

(4) 若单机并发数超过5000,则建议采用负载集群,即采用“中控(Control Center)多机部署(LoadGenerator)”方案。

4. 性能监控工具

4.1 监控工具

无论Windows或Linux

平台,一般存在的是一个或一组进程实例,我们可以选择Loadrunner 或 Nmon 来监控。有时为了获取被测应用的一些特性指标,可以选择被测组件自带的性能工具集或监控系统。常见应用服务器监控工具推荐如下:

4.2 监控平台

监控机器主要对被测集群服务器的服务或资源使用情况进行监控,比如各种开源的监控工具,MRTG:流量监控;CACTI:流量预警,性能报告Smokeping:IDC 质量监控;综合监控:Nagios、Zenoss、Ganglia 、Zabbix、Sitescope、Hyperic HQ 等,如下所示:

4.3 第三方监控云服务(APM)

APM提供端到端应用性能管理软件及应用性能监控软件解决方案,包含移动,浏览器,应用,基础设施,网络,数据库性能管理等,支持Java、.NET、PHP

、Ruby、Python

、Node.js、iOS

、Android

、HTML5

等应用性能监控管理,主流云服务包括听云、OneAPM等,如下所示:

性能测试结果分析

1. 指标分析

性能测试的指标可分为产品指标和资源指标两类。对测试人员而言,性能测试的需求来自于用户、开发、运维的三方面。用户和开发关注的是与业务需求相关的产品指标,运维人员关注的是与硬件消耗相关的资源指标。

(1) 从用户角度关注的指标

用户关注的是单次业务相关的体验效果,譬如一次操作的响应快慢、一次请求是否成功、一次连接是否失败等,反映单次业务相关的指标包括:

a.成功率b.失败率c.响应时间

(2) 从开发角度关注的指标

开发人员更关注的是系统层面的指标。

a.容量:系统能够承载的最大用户访问量是多少?系统最大的业务处理量是多少?

b.稳定性:系统是否支持7*24小时(一周)的业务访问。

(3) 从运维角度关注的指标

运维人员更关注的是硬件资源的消耗情况。

以上说明了测试人员在选择指标时需站在用户角度去思考,另外为了后续能够更好地分析问题,更需掌握与被测组件特性或运行原理相关的性能指标。

举例来说,通常接口系统均会直接或间接地访问数据库层介质(如Mysql、Oracle、SQLServer等),此时我们需考虑由接口系统产生压力下存储介质的性能情况,通常我们会选择分析指标如下:

(1) 连接数(Connections) (2) 每秒查询数/每秒事务数(QPS/TPS) (3) 每秒磁盘IO数(IOPS) (4) 缓存命中率(Buffer Hits) (5) 每秒发生的死锁数(Dead Locks/sec) (6) 每秒读/写字节数(Read/Write Bytes/sec)

2. 建模分析

2.1 理发店模型

图中展示的是1个标准的软件性能模型。在图中有三条曲线,分别表示资源的利用情况(Utilization,包括硬件资源和软件资源)、吞吐量(Throughput,这里是指每秒事务数)以及响应时间(Response Time)。图中坐标轴的横轴从左到右表现了并发用户数(Number of Concurrent Users)的不断增长。

在这张图中我们可以看到,最开始,随着并发用户数的增长,资源占用率和吞吐量会相应地增长,但是响应时间的变化不大;不过当并发用户数增长到一定程度后,资源占用达到饱和,吞吐量增长明显放缓甚至停止增长,而响应时间却进一步延长。如果并发用户数继续增长,你会发现软硬件资源占用继续维持在饱和状态,但是吞吐量开始下降,响应时间明显的超出了用户可接受的范围,并且最终导致用户放弃了这次请求甚至离开。

根据这种性能表现,图中划分了三个区域,分别是Light Load(较轻的压力)、Heavy Load(较重的压力)和Buckle Zone(用户无法忍受并放弃请求)。在Light Load和Heavy Load 两个区域交界处的并发用户数,我们称为“最佳并发用户数(The Optimum Number of Concurrent Users)”,而Heavy Load和Buckle Zone两个区域交界处的并发用户数则称为“最大并发用户数(The Maximum Number of Concurrent Users)”。

当系统的负载等于最佳并发用户数时,系统的整体效率最高,没有资源被浪费,用户也不需要等待;当系统负载处于最佳并发用户数和最大并发用户数之间时,系统可以继续工作,但是用户的等待时间延长,满意度开始降低,并且如果负载一直持续,将最终会导致有些用户无法忍受而放弃;而当系统负载大于最大并发用户数时,将注定会导致某些用户无法忍受超长的响应时间而放弃。所以我们应该保证最佳并发用户数要大于系统的平均负载。

2.2 压力变化模型

随着单位时间流量的不断增长,被测系统的压力不断增大,服务器资源会不断被消耗,TPS 值会因为这些因素而发生变化,而且符合一定的规律。

图中:a 点:性能期望值 b 点:高于期望,系统资源处于临界点 c 点:高于期望,拐点 d 点:超过负载,系统崩溃

2.3 容量计算模型

以一网站性能测试为案例:

1. 通过分析运营数据,可以知道当前系统每小时处理的PV数 2. 通过负载测试,可以知道系统每小时最大处理的PV数

即整理得

系统每小时PV处理剩余量 = 系统每小时最大处理的PV数 — 系统每小时处理的PV数

假设该网站用户负载基本呈线性增长,现有系统用户数为70万,根据运营推广计划,1年内该网站发展用户将达到1000万,即增长了14倍。即整理得:

系统每小时PV处理增加量 = 当前系统每小时处理的PV数 * 14 — 当前系统每小时处理的PV数

每天系统负载增加率 = 100% / 365 = 2.74 % (备注:此处将未来系统用户数达到1000万的负载定义为 100% )

系统每天PV处理增加量 = 系统每小时PV处理增加量 * 每天系统负载增加率 * 24

所以,我们可以知道在正常负载条件下:

系统可支持正常运行天数 = 系统每小时PV处理剩余量 * 24 / 系统每天PV处理增加量

假设该网站后续部署升级天数已知,这样我们可以知道提前升级的天数:

系统可支持正常运行天数 — 部署升级天数。

性能测试通过标准

1. 所有计划的测试已经完成。

2. 所有计划收集的性能数据已经获得。

3. 所有性能瓶颈得到改善并达到设计要求。

    推荐阅读
  • 小孩油盐不进该怎么办(孩子太难缠油盐不进)

    实际上这种“难缠”是叛逆的初成形态,在面对油盐不进的孩子时家长一定要打起精神,尽早排除孩子性格进一步偏执的可能。每个孩子的性格都是在后天慢慢养成的,“难缠”自然也有“难缠”的理由,家长作为孩子成长过程中最亲密的角色,一定要找到孩子“油盐不进”的根本原因。油盐不进的固执多多少少能反映出孩子的心理存在某些需要纠正的问题,在幼儿期不及时止损,经过青春期的发酵就会形成更为偏执的叛逆。

  • pu衣服怎么清洗(有什么方法)

    pu衣服怎么清洗如果衣服不太脏,可以采用局部去污手工清洗,手工清洗是指用干净棉布或棉球蘸取清洗剂,直接对皮革表面的污渍进行擦洗的一种方式。一般的洗衣粉和肥皂都可以对皮衣进行清新,但是必须要过酸,这样PU皮衣就不会打滑,可以阴干,可以洗衣机甩干,但是甩干需要间断,不能直至甩干,会损害皮衣,产生皱纹。对于PU皮衣的清洗,可以用潮湿柔软的毛巾轻柔擦拭污垢处,然后在通风处阴干,避免阳光暴晒。

  • leetcode主要算法(leetcode主要算法讲解)

    接下来我们就一起去了解一下吧!leetcode主要算法尺取法,对于孤陋寡闻的我来说,刷题之前没听说过,后来了解了一下这个方法,感觉好多题目都可以用这个方法解决,在leetcode上有一类题叫做TwoPointers,其中一部分题目就应该使用尺取法来解决。

  • 大油茶树移栽后的管理方法(移栽后水肥如何管理)

    大油茶树移栽后的管理方法修枝减叶:树木定植好后要及时进行修枝减叶,保留五分之一至八分之一的枝叶,修剪主枝后可促进侧枝生长,使树冠尽早恢复到原来的水平。薄膜去除后还要视天气情况用遮阳网再覆盖10~25天。一般来说,只有在遇到干旱天气才浇水以保证土壤的含水量。施肥可施于以树木为圆心,以比根系平均半径多30cm为半径的圆周上,促使新生次生根向四周扩展。

  • 小孩感冒鼻塞怎么办(两个月小孩感冒鼻塞怎么办)

    起居调养如果是小孩患上感冒出现了鼻塞的情况,在生活起居中要格外注意。按摩缓解小孩感冒鼻塞,可以通过按摩鼻翼两侧的迎香穴来帮助缓解鼻塞不适。迎香穴位于鼻子与微笑时嘴角自然形成的纹路的交点处。或者是用搓热的食指对鼻翼两侧进行上下揉搓以促进鼻腔内部血液循环缓解鼻塞。治疗护理如果是孩子因为感冒鼻塞已经严重影响他正常的生活学习。如若发现一定要尽早就医。

  • iphone闹钟铃声怎么设置(iphone闹钟铃声如何设置)

    以下内容希望对你有帮助!iphone闹钟铃声怎么设置苹果手机设置闹钟铃声的方法,需要先打开苹果手机桌面,然后在桌面里找到时钟图标。接着点击下方闹钟图标,点击右上角的新建按钮。最后在添加闹钟界面里找到铃声一栏,点击该选项即可修改闹钟铃声。截至2021年9月,苹果公司已发布32款手机产品。2007年1月9日,苹果公司在美国旧金山马士孔尼会展中心举行的Macworld大会上发布iPhone。

  • 干豆皮怎么烤才好吃(干豆皮做法)

    我们一起去了解并探讨一下这个问题吧!将豆皮洗干净沥干水分。切成长度适中的长条。放在烤炉的烤架上烤。其间要适合翻动,以保证豆皮串受热均匀。烤好后依据个人口味涂上蒜蓉辣酱、海鲜酱、孜然粉。依次涂均匀即可享用。

  • 做凉粉正确水和淀粉的比例(淀粉和水的比例是多少)

    掌握好黄金比例,一次就成功随着最近气温的升高,家人的食欲也变得不是特别好,所以最近经常会给家人做一些开胃的菜肴,比如说凉粉。做凉粉,豌豆淀粉和水的比例为1:6,用小碗来衡量即可。

  • 小摆件的制作方法(小摆件的制作的简单方法)

    以下内容希望对你有帮助!小摆件的制作方法首先你将一张正方形的废纸对折。然后摊开后将四个角向上折起。将正方形对折成长方形。将两边向中间对折。再把边折有痕迹。

  • 广州白云区2023来穗人员随迁子女积分制入学指标及分值体系表

    《广州市白云区2023年来穗人员随迁子女积分制入学指标及分值体系表》,具体内容详见正文!