性能测试面试题(附答案)
1、哪个函数是用来截取虚拟用户脚本中的动态值?(手工关联)
网络注册保存参数
2、你如何识别系统瓶颈?
根据TPS指数分析(即系统每秒可处理的事务数),系统每秒可处理的事务数是否会随着用户数的增加而增加
3、think_time有什么用?
思考时间的主要功能如下:
1)降低当前运行时压力,缓解对应用服务器所造成的压力2)模拟真实生产用户操作,考察对服务器所造成的影响
4.你通常什么时候开始性能测试
被测系统的正常业务流程通过,即集成测试通过后。
5.参数化的目的
1)减少脚本的大小
2) 提供不同的值来提高脚本的执行能力,从而更真实地模拟生产环境的数据
6、容量测试方法中为什么要以逐步递增的的方式进行
虚拟用户的数量随着加载时间的增加而增加,这有助于确定系统响应时间减慢时的确切时间点和确切的用户数量
7、假设在测试过程中发现某些事务的响应时间过长,但分析应用服务、数据库服务以及网络都属于
正常现象、问题的可能原因
1)lr客户端机器是否已无法承载当前运行压力导致lr无法及时获取从服务端返回的信息2)think_time(即思考时间)是否已忽略
3) 确定当前正在测试的系统架构是否是由在每次测试期间清除缓存引起的
8、如何发现应用服务的相关问题?
1) 通过对一些事务的操作,判断应用程序代码层是否没有调优,导致事务响应事件过长。2) 通过实时监控工具(nmon等)进行监控和分析:
a)系统在运行过程其cpu是否稳定运行或cpu耗用是否过高b)在系统运行过程中其内存是否存在内存泄露现象
3) 打开相应的应用程序日志,分析操作过程中是否存在事务错误,并获取错误原因,查看是否由代码引起
原因导致交易错误发生
9.如何发现与数据库相关的问题?
1)通过运行某些相应的已获取的sql语句,判断是否由于数据库索引所导致的事务响应过长
问题出现了
2)通过实时监控工具(nmon等)监控分析:
a) 系统运行过程中CPU是否能稳定运行或CPU消耗过高;b) 系统运行期间是否存在内存泄漏。
10、解释以下函数及他们的不同之处。
lr_u;debug_u;Message将调试信息发送到输出窗口或相应的日志,即调试日志lr_u;output_uu;Message将日志信息发送到输出窗口或相应的日志,即info log lr_u;error_uu;Message将错误日志信息发送到输出窗口或相应的日志,例如,错误日志LRD_uStmt分配一条SQL语句来处理LRD_Stmt获取结果集中的下一行数据
11、
常见的性能测试方法有哪些?每种测试方法的目的是什么?
1)基准测试:确保测试环境无问题,初步评估每次只是单独运行一个交易时,当前系统
的响应时间是否够快,各服务器的cpu、内存耗用是否合理;
2) 单事务并发测试:确保数据库中没有线程死锁等问题,并评估系统的响应时间是否足够快,以及当只有一个事务单独运行时,每个服务器的CPU和内存消耗是否合理。
3)混合场景测试:模拟真实生产场景,评估其系统各交易的响应时间是否够快,各服务器的cpu、内存是否合理。
4) 浪涌测试场景:模拟高峰和低峰业务处理能力,评估系统各服务器的CPU和内存消耗是否合理。5) 稳定性测试场景:模拟不间断运行系统,评估系统能否高效稳定运行。
6)容量测试场景:通过不间断逐步加大用户数或业务处理量,确定在特定环境下,预测其系统所能承载的最大用户并发数或最大的业务处理量,从而为项目组提供扩容依据。
12、
解释几个常用的性能指标的名称与具体含义。
1) 事务:(全名:事务),单位:编号,即从用户准备执行操作到操作完成的过程。2)
思考时间:(全名:thinktime),单位:秒,一般与交易结合使用。例如,在事务a之后或之前添加2秒的思考时间,即每2秒运行事务a
3)集合点:(全称:rendezous),一般与事务组合使用,例如在a事务前增加一个集合点,且用户并发数为10用户并发,即指10用户每次均需完全到达这个集合点后,在一次性进行并发发起请求,在性能测试中,通常将未设置集合点的并发叫做广义并发(因系统处理能力有限,存在排队概念,因此会导致用户发起的请求顺序有先有后),将设置集合点的并发叫做狭义并发(即客户端一次性想服务器发起请求),一般,性能测试所采用的模式为广义并发模式。
4) 事务响应时间:(全名:事务响应时间),单位:秒。其主要功能是评估当前系统的响应时间。
5)事务tps:(全称transactionpersecond),事务处理能力,单位:笔/秒,其主要作用为评估当前服务器的处理能力。
6) 并发用户数:(全名:RunningVuser),单位:PCs,主要用于评估当前服务器的负载压力。并发用户计算公式:事务响应时间*事务TPS≈ 并发用户
7)吞吐量:(全称:throughput),单位:字节,即指客户端在向服务器端发起请求后,其服务器的返回信息。吞吐量的计算公式为:总事务tps*总返回字节数*运行时间≈吞吐量。
8) 点击次数:(全名hitspersecond),单位;Times/second,即客户端每秒向服务器发起的请求总数。主要用于评估当前服务器的负载压力。
9)通过事务数:单位:个,即系统在运行一段时间内其事务的总计完成事务数10)失败事务数:单位:个,即系统在运行一段时间内其事务的总计完成失败事务数
11) 交易通过率:指系统在一段时间内完成交易的成功率。主要用于评估当前系统的稳定运行和处理能力。交易通过率计算公式:成功交易数/成功交易数+失败交易数*100%
12)cpu资源利用率,即系统在运行一段时间内,其各相关服务器cpu的资源耗用情况13、
如何获得性能测试要求?如何设计和分析是否满足要求?1) 查看需求文档时,从中提取性能测试需求,与用户沟通并了解实际使用情况。2) 结合业务信息,设计运营场景,
总结需要测试的关键绩效指标。3) 执行用例后,根据提取的关键性能指标分析性能需求是否得到满足。14、
客户交付一个性能测试项目,请阐述你的实施流程测试设计阶段:
1) 了解被测系统的性能要求,定义测试目标和范围;2) 了解系统的技术信息,如系统架构
3)确定测试方案,进度安排,并制定测试计划,场景设置方案及需收集的测试数据4)同相关人员协商讨论测试方案
5) 准备测试集合模板。不同项目的性能测试需要收集的数据不同。制定一个模板更为一致
合需要测试环境准备
1) 技术准备:选择测试方案中涉及的性能测试工具和技术问题;测试数据收集方案的实施;
如:如何监控系统资源等;2)搭建测试环境
3) 创建初始数据:例如虚拟用户使用的帐户;测试执行阶段:1)录制脚本2)调试脚本3)执行场景;
4)收集测试数据,并简单整理测试分析阶段:1)分析测试数据提交测试报告15、
请选择以下两个项目中的一个,并考虑如何设计用例:A杯B.圆珠笔和弹簧A杯。
需求测试:查看杯子使用说明书界面测试:查看杯子外观
功能:在水杯中加水,查看是否有泄漏;水可以喝吗?安全:杯子里有毒物或细菌吗
可靠性:杯子从不同高度落下的损坏程度
便携性:杯子是否可以在不同的地方、温度和其他环境中正常使用。配伍性:杯子是否能容纳果汁、白水、酒精、汽油等易用性:杯子是否热,是否有防滑措施,饮用是否方便
用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述
多表查询sql语句面试题
疲劳试验:将杯子装满水(情况1)并放置24小时,以检查泄漏时间和情况;加注汽油(案例2)并放置24小时,以检查泄漏时间和状况
压力测试:用一根针并在针上面不断加重量,看压强多大时会穿透强度测试:杯子加包装(有填充物),在多高的情况下摔下不破损
b、 带弹簧的圆珠笔:
功能测试:圆珠笔按下是否能正常写字,写字太重会不会缩回去,继续按会不会弹回去性能测试:圆珠心弹出弹回的快慢
负载测试:一直按,弹簧可以接受多少次提升和收缩兼容性测试:其他填充物可以进行强度测试:如果用力过大会发生什么
可恢复性测试:如果弹簧压久了,是否可恢复等等gui测试:笔的外观,拿笔的舒适性
安全:考虑续杯的保护,对使用者是否有害等。
16、现有customers表和sales表的数据如下:customers表:
客户名称HPCityDiscount 449320适配器端口0。05890003Aportland0。05888402seaworthalbany0。04销售表:
saleidcustidsalemount2341124993208000234113888402650023411449932059002341158900034500要求:
1) 给出查询语句。Description:查询customers表中名称为AA的查询语句;2) 描述:删除sales表中saleid为234115的对账单。3) 根据以下结果表给出多表查询语句。
saleidcustidnamediscountsalemount234112499320adapto0.058000234113888402seaworth0.046500234114499320adapto0.055900234115890003aa0.054500答案:
1) 选择*FromCustomerWhereName='aa'2)删除FromSalesWhereSaleID='234115'3)选择销售。萨利德,顾客们。库斯蒂德,顾客们。姓名,顾客。折扣,销售。塞勒蒙特
customers,saleswherecustomers.custid=sales.custid
17、
from
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论