性能测试实用面试题.docx

上传人:b****0 文档编号:544735 上传时间:2022-10-11 格式:DOCX 页数:30 大小:38.41KB
下载 相关 举报
性能测试实用面试题.docx_第1页
第1页 / 共30页
性能测试实用面试题.docx_第2页
第2页 / 共30页
性能测试实用面试题.docx_第3页
第3页 / 共30页
性能测试实用面试题.docx_第4页
第4页 / 共30页
性能测试实用面试题.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

性能测试实用面试题.docx

《性能测试实用面试题.docx》由会员分享,可在线阅读,更多相关《性能测试实用面试题.docx(30页珍藏版)》请在冰豆网上搜索。

性能测试实用面试题.docx

性能测试实用面试题

性能测试实用面试题

软件性能测试模拟笔试题目

(一)

注:

本试卷中题目所涉及性能测试工具如无特殊说明则均为LoadRunner。

一、简答题(2*10=20分)

1.客户交付一个性能测试项目,请阐述你的实施流程。

答案:

测试设计阶段:

1)了解被测系统的性能需求,定义测试目标和范围;

2)了解系统的技术信息,如系统架构等;

3)确定测试方案、进度安排,并制定测试计划,场景设置方案,及需要收集的测试数据;

4)同相关人员协商讨论测试方案;

5)准备数据收集模板;不同项目的性能测试,需要收集的数据不同;针对性的制定一个模板,更符合需要;

测试环境准备:

1)技术准备;选择性能测试工具;测试方案中涉及到的技术问题;测试数据的收集方案实现;如:

如何监控系统资源等;

2)搭建测试环境;

3)创立初始数据;如虚拟用户使用的账号等;

测试执行阶段:

1)录制脚本;

2)调试脚本;

3)执行场景;

4)收集测试数据,并简单整理;

测试分析阶段:

1)分析测试数据;

提交测试报告。

2.解释5个常见的性能指标的名称与具体含义。

答案:

●并发:

所有用户在同一时刻对系统执行操作,一般指做同一件事情或操作。

●在线:

所有用户在一段时间内对系统执行操作。

●请求响应时间

从client端发出请求到得到响应的整个时间;

包括:

client端响应时间+网络响应时间+Server端响应时间。

●事务请求响应时间

完成相应事务所用的时间;这个是性能测试中重点关注的指标。

●TPS(TransactionPerSecond)

每秒钟系统能够处理的交易或事务的数量。

它是衡量系统处理能力的重要指标。

TPS是LoadRunner中重要的性能参数指标。

●点击率(HitPerSecond)

每秒发送的HTTP请求的数量;点击率越大对Server的压力越大

●资源利用率

对不同资源的使用程度,如CPU,I/O,内存,……

3.写出5个Loadrunner中常见函数,并对其中2个举例说明用法。

答案:

字符串复制

strcpy(str,"Hello");

字符串连接

strcat(str,"World!

");

lr_message("str:

%s",str);

sprintf(s,"%slove%s.","I",“ocean");//产生:

“Iloveocean."

变量转为参数,将变量str的值存到参数Param中

lr_save_string(str,"Param");

参数复制

lr_save_string(lr_eval_string("{Param}"),"Param_1");

参数转为变量

strcpy(str1,lr_eval_string("{Param_1}"));

4.简述LoadRunner的工作原理?

答案:

loadrunner会自动监控指定的URL或应用程序所发出的请求及服务器返回的响应,它做为一个第三方(Agent)监视客户端与服务器端的所有对话,然后把这些对话记录下来,生成脚本,再次运行时模拟客户端发出的请求,捕获服务器端的响应。

5.什么是集合点?

设置集合点有什么意义?

LoadRunner中设置集合点的函数是哪个?

答案:

集合点:

是一个并发访问的点,例如在测试计划中,可能会要求系统能够承受1000人同时提交数据,在LoadRunner中能够经过在提交数据操作前面加入集合点,这样当虚拟用户运行到提交数据的集合点时,LoadRunner就会检查同时有多少用户运行到集合点,如果不到1000人,LoadRunner就会命令已经到集合点的用户在此等待,当在集合点等待的用户达到1000人时,LoadRunner命令1000人同时去提交数据,并发访问的目的。

注意:

集合点经常和事务结合起来使用,常放在事务的前面,集合点只能插入到Action部分,vuser_init和vuser_end中不能插入集合点。

集合点函数如下:

lr_rendezvous(“SubmitData”)

6.HTML-basedscript与URL-basedscript的脚本有什么区别?

答案:

使用“HTML-basedscript”的模式录制脚本,VuGen为用户的每个HTML操作生成单独的步骤,这种脚本看上去比较直观;使用“URL-basedscript”模式录制脚本时,VuGen能够捕获所有作为用户操作结果而发送到服务器的HTTP请求,然后为用户的每个请求分别生成对应方法。

一般,基于浏览器的Web应用会使用“HTML-basedscript”模式来录制脚本;而没有基于浏览器的Web应用、Web应用中包含了与服务器进行交互的JavaApplet、基于浏览器的应用中包含了向服务器进行通信的JavaScript/VBScript代码、基于浏览器的应用中使用了HTTPS安全协议,这时使用“URL-basedscript”模式进行录制。

7.如何设置LaodRunner才能让集合点只对一半的用户生效?

答案:

在Loadrunner中,进入Controller->Scenario->Rendezvous…->Policy,系统弹出Policy对话框。

在该对话框中能够设定集合点执行的策略。

第一项:

表示当所有用户数的X%到达集合点时,开始释放等待的用户并继续执行场景。

第二项:

表示当前正在运行用户数的X%到达集合点时,开始释放等待的用户并继续执行场景。

第三项:

表示当X个用户到达集合点时,开始释放等待的用户并继续执行场景。

其中还有一项TimeoutbetweenVusers,就30秒来说,当第一个用户到达集合点后,再等待30秒,如果在30秒内到达的用户数达到指定的数量,就开始继续执行场景。

如果在30秒内还没有达到指定的用户数量,就不再等待,开始释放等待的用户并继续执行场景。

由上可知,将第一项用户数设置成50%可。

8.LoadRunner的Controller组件中Pacing参数的作用是什么?

答案:

设置LoadRunner中事务(trsaction)在每次循环中的间隔时间,系统能够利用该间隔时间进行相应事务的结束收尾工作的处理。

加大Pacing参数,可使系统压力减小。

9.LoadRunner中如何监控Windows资源?

答案:

进入被监视windows系统,开启以下二个服务:

RemoteProcedureCall(RPC)和RemoteRegistryService;在controller中,WindowsResources窗口中右击鼠标选择AddMeasurements,添加被监控windows的IP地址,选择所属系统,然后选择需要监控的指标就能够开始监控。

10.如果让QALoad模拟LoadRunner中只对关注的性能点进行迭代测试,你有什么好方法?

答案:

能够将QAload脚本中关注的事务点写成一个循环,如果进行长时间的综合场景测试,则可将其写成一个永真循环,如while

(1){事务点},则对关注的性能点进行循环,而脚本其它代码不会进行循环。

11.什么是负载测试?

负载测试是经过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试,例如,访问一个页面的响应时间规定不超过1秒,负载测试就是测试在响应时间为1秒时,系统所能承受的最大并发访问用户的数量。

12.什么是性能测试?

 性能测试:

指在一定的约束条件下(指定的软件、硬件、网络环境等),确定系统所能承受的最大负载压力。

13.说明负载测试过程?

第一步:

计划测试。

在这里,我们需开发一个明确定义的测试计划,以确保该测试方案能完成负载测试目标。

第二步:

创立虚拟用户。

创立的脚本需要包含单个虚拟用户需要执行的操作、多个虚拟用户作为一个整体要执行的操作、以及能够作为事务来度量的操作。

第三步:

创立场景。

一个场景描述了在一个测试会话中发生的事件。

它包含了当场景中运行时的机器、脚本和虚拟用户。

我们使用LoadRunner中的Controller创立场景。

我们能够创立手动场景也能够创立基于目标的场景。

在手动场景中,我们定义虚拟用户的数量、负载生成器、被分配到每个脚本中虚拟用户的百分比。

对于web测试,我们创立基于目标的场景,其中目标即测试过程中要达成的性能目标。

LoadRunner会由此自动为我们创立一个场景。

第四步:

运行场景。

我们经过配置多个虚拟用户同时执行任务来模拟对服务器加压。

在测试之前,我们设置场景的配置和计划安排。

我们能够运行整个场景、一组虚拟用户或单个虚拟用户。

第五步:

监控场景。

我们使用LoadRunner联机运行来监测场景执行、事务系统资源,Web资源,Web服务器资源,Web应用服务器资源,数据库服务器资源,网络延迟,流媒体资源,防火墙服务器资源,ERP服务器资源,Java性能监视器。

第六步:

分析测试结果。

在场景执行时,LoadRunner记录了应用软件在不同负载下的性能。

我们能够使用LoadRunner的图表和报告来分析应用软件的性能。

 

14.我们什么时候做负载和性能测试?

我们一旦完成界面(GUI)测试,我们就能够执行负载测试。

现代的软件系统架构庞大而复杂的。

而单用户测试主要是侧重于系统组件的功能和用户界面的测试,应用测试侧重于整个系统的性能和可靠性。

例如,一个典型的应用测试场景,描绘了1000个用户,同时登录到系统。

这就产生了问题,如系统的响应时间是多少,它会崩溃么;是否兼容不同的应用软件和系统平台;它是否能够支撑成千上万的用户等,这时我们就需要做负载和性能测试。

15.什么是LoadRunner的组件?

LoadRunner的组件有虚拟用户生成器,控制器、代理程序、LoadRunner的分析器和监控器,LoadRunner在线帮助

16.你用LoadRunner的哪个组件录制脚本?

虚拟用户生成器(VuGen)能够用来录制脚本。

它经过多种应用程序类型和通讯协议来确保你开发一个Vuser脚本。

 

17.在多用户模式下你用LoadRunnner的哪个组件来回放脚本?

虚拟用户生成器(VuGen)能够用来录制脚本。

它经过多种应用程序类型和通讯协议来确保你开发一个Vuser脚本。

18.在多用户模式下你用LoadRunnner的哪个组件来回放脚本?

Controller组件能够用来在多用户模式下回放脚本。

这个过程能够在一组虚拟用户以组的形式执行脚本的场景中运行时完成。

19.什么是场景

场景定义了发生在每个测试会话中的事件。

例如,一个场景定义和控制了要加载的虚拟用户的数量,要被执行的动作,虚拟用户模拟压力时的机器。

20.解释WebVuser脚本的录制模式

我们使用VuGen经过记录一个用户在客户端执行典型的业务流程来开发一个Vuser脚本。

VuGen经过记录客户端和服务器之间的交互来创立脚本。

例如,基于Web的应用程序,VuGen监测客户端直到数据库,跟踪所有发送出的请求,再从数据库服务器接收。

我们使用VuGen:

监测应用程序和服务器的交互;使形成函数调用;插入生成的函数调用到一个Vuser脚本中。

21.为什么创立参数?

参数就像脚本中的变量。

她们被用来改变对服务器的输入值来模拟真正的用户。

每次当脚本运行时,不同的数据设置被发送到服务器。

为了更精确的在Controller中测试,从而更好的模拟使用模型;一个脚本在系统上模拟很多不同的用户。

22.什么是关联?

解释自动关联和手动关联的区别

关联是用来获取每次脚本运行时由嵌套请求产生的唯一的数据。

关联提供值以避免产生重复值的错误,而且优化代码(避免嵌套请求)。

自动关联是我们自己为关

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1