您好,欢迎来到九壹网。
搜索
您的当前位置:首页性能测试复习讲解

性能测试复习讲解

来源:九壹网
性能测试复习题

连线题:

1. Requst Quened (进入HTTP队列的时间) 2. Total request (总请求数时间) 3. Avg Rps (平均每秒钟响应次数)

4. Avg time to last byte per terstion (mstes)平均每秒迭代次数 5. Http Error (无效请求次数) 6. Send (发送请求次数字节数 ) 7. Load Size(压力规模大小) 8. Round Time(请求时间) 9. Rounds (请求数)

10. Successful Rounds(成功的请求) 11. Failed Rounds (失败的请求) 12. Rounds Per Second (每秒请求次数)

13. Successful Rounds Per Second(每秒成功的请求次数) 14. Failed Rounds Per Second(每秒失败的请求次数) 15. Page Time (页面响应时间 ) 16. Pages (页面数)

17. Pages Per Second (每秒页面响应数) 18. H it Time(点击时间) 19. Hits(点击次数)

20. Successful Hits (成功的点击次数) 21. Failed Hits (失败的点击次数) 22. Hits Per Second (每秒点击数)

23. Successful Hits Per Second (每秒成功的点击次数) 24. Failed Hits Per Second (每秒失败的点击次数) 25. Attempted Connections (尝试链接数) 26. Successful Connections(成功的连接数) 27. Failed Connections(失败的连接数)

28. Connect Time(连接时间) 29. Process Time(系统执行时间) 30. Receive Time(接受时间) 31. Send Time(请求时间)

32. Throughput (Bytes Per Second)(吞吐量) 33. Response Time(回应时间)

34. Transactions per second(每秒处理事务数) 35. Rounds per second(每秒完成数)

简答题:

1.什么是负载测试?什么是性能测试?【参】负载测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试,例如,访问一个页面的响应时间规定不超过1秒,负载测试就是测试在响应时间为1秒时,系统所能承受的最大并发访问用户的数量。性能测试:指在一定的约束条件下(指定的软件、硬件、网络环境等),确定系统所能承受的最大负载压力。 2.性能测试包含了哪些软件测试(至少举出3种)【参】性能测试包含负载测试、压力测试、大数据量测试、疲劳强度测试等。

3.请写出LoadRunner的测试过程【参】LR的测试过程:第一步规划测试;第二步创建Vuser脚本;第三步创建方案;第四步运行方案;第五步监视方案;第六步分析测试结果。

4.请解释一下如何录制web脚本?【参】功能测试通过;一般需要进行性能测试的系统,都是用户量比较大、业务使用比较频繁、比较重要的功能模块。

5. 搭建测试环境的时候的注意事项?【参】在搭建测试环境时,需要注意以下几点:1.尽量模拟用户的真实场景2.干净的环境3.没有病毒的影响4.的测试环境

6.什么是场景?场景的重要性有哪些?如何设置场景?【参】场景用于模拟用户实际业务操作;LoadRunner中场景有手工场景和面向目标的场景。设置场景:选择场景类型、设置运行时设置、模拟用户数、加减压方式、持续时间,配置负载生成器。

7.请解释一下如何录制web脚本?【参】利用Virtual User Generator录制测试脚本,录制步骤:(1)选择合适的协议(2)设置录制选项(3)开始录制。

8.为什么要对脚本进行参数化设置?【参】LoadRunner在录制脚本的时候,只是忠实的记录了所有从客户端发送到服务器的数据,而在进行性能测试的时候,为了更接近真实的模拟现实应用,对于某些信息需要每次提交不同的数据,或者使用多个不同的值进行循环输入。这时,在LoadRunner中就可以进行参数化设置,以使用多个不同的值提交应用请求。 9.什么是关联?请解释一下自动关联和手动关联的不同。【参】关联的定义简单的说:就是把脚本中某些写死(固定)的数据,转变成动态的数据,或者说将前面语句的结果数据保存下来,然后在后面的语句提交请求时使用这些数据。自动关联与手工关联的不同:自动关联是在脚本录制过程中,VuGen会根据已经制定好的规则,自动找出需要关联的值或脚本录制完成后,执行脚本一次,通过Correlation Studio自动找出需要关联的数据,并建立关联;而手动关联是需要录制两份相同业务流程的脚本,输入的数据要相同,利用WinDiff工具,找出两份脚本之间不同之处,也就是需要关联的数据,再通过web_reg_save_param函数手动建立关联,将脚本中用到关联的数据参数化。

10.LoadRunner脚本中出现乱码如何解决?脚本录制可能采用的是URL-based script方式,如果程序定义的字符集合采用的是国际标准,脚本就会出现乱码现象。重新录制脚本,在录制脚本前,打开录制选项配置对话框进行设置,在“Recording Options”的“Advanced”选项里先将“Surport Charset”选中,然后选中支持“UTF-8”的选项。

11.你如何在负载测试模式下执行功能测试?【参】在负载测试模式下,可以通过同时运行数个虚拟用户,通过增加虚拟用户数,确定服务器在多大的负载量下,仍然可以正常运行,一般进行核心功能操作,验证核心功能运行是否正常。

12.如何掌握“拐点”分析方法?【参】它的基本思想就是性能产生瓶颈的主要原因就是因为某个资源的使用达到了极限,此时表现为随着压力的增大,系统性能却出现急剧下降,这样就产生了“拐点”现象。当得到“拐点”附近的资源使用情况时,就能定位出系统的性能瓶颈。“拐点分析”方法举例:如系统随着用户的增多,事务响应时间缓慢增加,当用户数达到100个虚拟用户时,系统响应时间急剧增加,表现为一个明显的“折线”,这就说明了系统承载不了如此多的用户做这个事务,也就是存在性能瓶颈。

13.如何理解Return的返回值?【参】Return表示一个过程的结束,在LR中用Return根据不同的返回值,表示脚本的成功或者失败。Return大于等于零的数字表示成功;反之,则表示失败。

14.以线程方式运行的虚拟用户有哪些优点?【参】以线程方式运行的虚拟用户,在默认情况下,Controller为每50个用户仅启动一个mmdrv进程,而每个用户都按线程方式来运行,这些线程用户将共享父进程的内存,这就节省了大量内存空间,从而可以在一个负载生成器上运行更多的用户。

15.你如何在负载测试模式下执行功能测试?【参】在负载测试模式下,可以通过同时运行数个虚拟用户,通过增加虚拟用户数,确定服务器在多大的负载量下,仍然可以正常运行,一般进行核心功能操作,验证核心功能运行是否正常。

综合应用题:

1. 阅读下列说明,回答问题1-问题4,将答案填入答题纸的对应栏内。 【说明】

负载压力性能测试是评估系统性能、性能故障诊断及性能调优的有效手段。下表所示为针对税务证管系统中“税票录入”业务的测试结果,系统服务器端由应用服务器和单节点数据库服务器组成。 测试结果 并发用户数 10 20 30 50 交易吞吐量 平均值 0.56 2.15 3.87 7.02 交易响应时间平均值 0.57 1.16 3.66 6.63 数据库服务器CPU平均利用率 37.50% 57.32% 70.83% 97.59% 应用服务器 CPU平均利用率 13.58% 24.02% 39.12% 53.06% 【问题1】(5分)

简述交易吞吐量和交易响应时间的概念。 【问题2】(5分)

试判断随着负载增加,当交易吞吐量不再递增时,交易响应时间是否会递增并说明理由。 【问题3】(5分)

根据上述测试结果,判断服务器资源使用情况是否合理,为什么? 【问题4】(5分)

在并发用户数为50时,如果交易吞吐量和交易响应时间都不满足需求,简述数据库端造成缺陷的主要原因,有效的解决方案是什么?

【题目分析】

负载压力测试在一定约束条件下测试系统所能承受的并发用户量、运行时间和数据量,以确定系统所能承受的最大负载压力。它和压力测试都是性能测试的一个方面,负载测试通过逐步增加系统负载测试系统性能的变化,并最终确定在满足性能指标的情况下系统所能承受的最大负载量的测试;

压力测试通过逐步增加系统负载,测试系统性能的变化,并最终确定在何种负载条件下系统性能处于失效状态,并以此获得系统能提供的最大服务级别的测试。

负载压力测试有助于确认被测系统是否能够支持性能需求,以及预期的负载增长等。它不仅关注不同负载场景下的响应时间等指标,也要通过测试来发现在不同负载场景下会出现的问题的原因如速度变慢及内存泄漏等。

数据库服务器性能常见问题及原因分析如下: 1.

单一类型事务响应时间过长,通常可能的原因有数据库服务器负载过重,槽糕的数据库设计、事务粒度过大和批任务对普通用户性能的影响。

2. 3.

并发处理能力差,一般是由于访问互斥资源造成的。 锁冲突严重,可能的原因有资源锁定造成的数据库事务超时及数据库死锁等。

数据库性能问题的一般解决方法和步骤如下。

1. 监控性能相关数据。

2. 定位资源占用较大的事务并做出必要的优化或调整,通过SQL语句的执行计划找出占用资源最大的事物并优化。 3. 定位锁冲突,修改发生严重的应用逻辑。

4. 对规模较大的数据或者无法通过一般优化解决的锁冲突进行分布。如进行负载均衡及数据分布式处理等。 【参】 问题1:

1. 交易吞吐量:系统服务器每秒能够处理通过的交易数。 2. 交易响应时间:系统完成事务执行准备和完成待执行事务后所采集的时间戳之间的时间间隔,时衡量特点类型应用事务性能的重要指标,标志用户执行一项操作大致需要的时间。

问题2:

随着负载增加,当交易吞吐量不再递增时,交易响应时间一般会

递增。当系统达到交易吞吐量极限时,客户端交易会在请求队列中排队等待,等待的时间会记录在响应时间内。

问题3:

数据库服务器资源使用不合理。

当并发用户数达到50时,数据库服务器CPU平均利用率达到97.5%,属于不合理范围。 问题4:

数据库端造成此缺陷的主要原因包括服务器资源负载过重、数据库设计不合理、数据库单个事务处理响应时间长和系统并发负载造成最终用户响应时间长。

有效的解决方案是采用数据库集群策略,并注意配置正确。

2.阅读下列说明,回答问题1-4,将答案填入答题纸对应的区域内。 【说明】

某“网站稿件管理发布系统”是采用J2EE架构开发的B/S系统,WEB服务器、应用服务器,以及数据库服务器部署在一台物理设备上。

系统实现的功能主要包括稿件管理和文档上传下载,稿件管理模块可以对稿件执行增加、查询、删除、修改、显示和批准等操作,批准后的稿件即可在网站上发布;文档上传下载模块,可以将稿件直接以WORD文档的格式上传下载。

系统性能需求如下:

1. 主要功能操作在5秒钟内完成。 2. 支持50个在线用户。

3. 稿件管理的主要功能至少支持20个并发用户。

4. 在50个用户并发的高峰期,稿件管理的主要功能的处理能力至少要达到8trans/s

5. 系统可以连续稳定运行12小时。 问题1:

简述“网站稿件管理发布系统”在生产环境下承受的主要负载类型。

问题2:

简述“网站稿件管理发布系统”执行的性能测试中应测试的关键指标。 问题3:

简述访问系统的“在线用户”和“并发用户”的区别。 问题4:

系统性能需求中要求“系统可以连续稳定运行12小时”,若系统连续运行12小时完成的总业务量为1000笔,系统能够提供的最大交易执行吞吐量为200笔/小时,试设计测试周期并说明理由。 【分析】

考察性能测试的具体应用,涉及的知识点包括测试需求分析、负载的类型、性能指标的含义和测试策略的选择。

问题1 主要从题中的系统性能需求来分析,从“支持50个在线用户及“稿件管理的主要功能至少支持20个并发用户”可以看出需要承受并发执行负载,从“在50个用户并发的高峰期,稿件管理的主要功能的处理能力至少要达到8trans/s”可以看出需要承受大数据量负载,从“系统可以连续稳定运行12小时”可以看出需要承受疲劳强度负载。

问题2也从题中的系统性能需求来分析,“主要功能操作在5秒钟内完成”体现的是交易执行响应时间指标,“稿件管理的主要功能至少支持20个并发用户”体现的是并发用户数指标,“在50个用户并发的高峰期,稿件管理的主要功能的处理能力至少要达到8trans/s”体现的是交易执行吞吐量指标。

问题3考察并发用户和在线用户的区别,并发用户指某一物理时刻同时向系统提交请求的用户数;在线用户是指某段时间访问系统的用户数,这些用户不一定同时向系统提交请求。要明确区分。

问题4考察性能测试的执行策略,在保证业务总量的前提下增加单位时间的负载可以缩短测试周期。 【答案】

1. 该系统承受的主要负载类型有并发执行、疲劳强度和大数据量负载。

2. 并发用户数、交易执行响应时间和交易执行吞吐量。

3. 并发用户:指某一物理时刻内同时向系统提交请求的用户数。

在线用户:指某段时间内访问系统的用户数,这些用户不一定同时向系统提交请求。

4.测试周期可以选择5小时(1000/200=5),原因是增加了单位时间的负

载,并缩短了测试周期,保证12小时的总业务量。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务