性能测试面试题(附答案)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、哪个函数是用来截取虚拟用户脚本中的动态值?(手工关联)

Web_reg_save_param

2、你如何识别系统瓶颈?

从TPS指标分析(即系统每秒处理可处理事务数)当前随着用户数的增长其系统每秒可处理的事务数是否也会增长

3、think_time有什么用?

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_debug_message 发送调试信息到输出窗口或相应日志内,即调试日志

Lr_output_message 发送日志信息到输出窗口或相应日志内,即INFO日志

Lr_error_message 发送错误日志信息到输出窗口或相应日志内,即ERROR日志

Lrd_stmt 赋予一个SQL语句用于处理

Lrd_fetch 获取结果集中的下一行数据

11、常见的性能测试方法有哪些?以及每类测试方法的目的是什么?

1)基准测试:确保测试环境无问题,初步评估每次只是单独运行一个交易时,当前系统的响应时间是否够快,各服务器的CPU、内存耗用是否合理;

2)单一交易并发测试:确保数据库不存在线程死锁等问题,评估在只是单独运行一个交易时,其系统的响应时间是否够快,各服务器的CPU、内存耗用是否合理。

3)混合场景测试:模拟真实生产场景,评估其系统各交易的响应时间是否够快,各服务器的CPU、内存是否合理。

4)浪涌测试场景:模拟高峰与低峰业务处理量,评估系统各服务器的CPU、内存耗用是否合理。

5)稳定性测试场景:模拟不间断运行系统,评估系统是否可高效不间断稳定运行。

6)容量测试场景:通过不间断逐步加大用户数或业务处理量,确定在特定环境下,预测其系统所能承载的最大用户并发数或最大的业务处理量,从而为项目组提供扩容依据。

12、解释几个常用的性能指标的名称与具体含义。

1)事务:(全称:transaction),单位:个,即用户在准备进行一个操作到完成操作的过程

2)思考时间:(全称:thinktime),单位:秒,一般与事务组合使用,例如在A事务后或者在A 事务前增加一个2秒的思考时间,即指每2秒钟运行一次A事务

3)集合点:(全称:rendezous),一般与事务组合使用,例如在A事务前增加一个集合点,且用户并发数为10用户并发,即指10用户每次均需完全到达这个集合点后,在一次性进行并发发起请求,在性能测试中,通常将未设置集合点的并发叫做广义并发(因系统处理能力有限,存在排队概念,因此会导致用户发起的请求顺序有先有后),将设置集合点的并发叫做狭义并发(即客户端一次性想服务器发起请求),一般,性能测试所采用的模式为广义并发模式。

4)事务响应时间:(全称:transaction response time),单位:秒。其主要作用为评估当前系统的响应时间的快慢。

5)事务TPS:(全称transaction per second),事务处理能力,单位:笔/秒,其主要作用为评估当前服务器的处理能力。

6)并发用户数:(全称:Running vusers),单位:个,其主要作用为用来评估当前服务器的负载压力。并发用户数的计算公式:事务响应时间*事务TPS≈并发用户数

7)吞吐量:(全称:throughput),单位:字节,即指客户端在向服务器端发起请求后,其服务器的返回信息。吞吐量的计算公式为:总事务TPS*总返回字节数*运行时间≈吞吐量。

8)点击数:(全称hits per second),单位;次/秒,即每秒客户端向服务器端发起的总请求数,其主要作用为用来评估当前服务器的负载压力。

9)通过事务数:单位:个,即系统在运行一段时间内其事务的总计完成事务数

10)失败事务数:单位:个,即系统在运行一段时间内其事务的总计完成失败事务数

11)事务通过率:即指系统在运行一段时间内其事务完成的成功率。其主要作为是用来评估当前系统的稳定运行处理能力。事务通过率的计算公式:成功事务数/成功事务数+失败事务数*100%

相关文档
最新文档