lr经典面试题

上传人:小** 文档编号:93861010 上传时间:2019-07-29 格式:DOC 页数:12 大小:286.67KB
返回 下载 相关 举报
lr经典面试题_第1页
第1页 / 共12页
lr经典面试题_第2页
第2页 / 共12页
lr经典面试题_第3页
第3页 / 共12页
lr经典面试题_第4页
第4页 / 共12页
lr经典面试题_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《lr经典面试题》由会员分享,可在线阅读,更多相关《lr经典面试题(12页珍藏版)》请在金锄头文库上搜索。

1、Q1:什么是负载测试?什么是性能测试?A1:负载测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试,例如,访问一个页面的响应时间规定不超过1秒,负载测试就是测试在响应时间为1秒时,系统所能承受的最大并发访问用户的数量。性能测试:指在一定的约束条件下(指定的软件、硬件、网络环境等),确定系统所能承受的最大负载压力。Q2.性能测试包含了哪些测试(至少举出3种)A2:性能测试包含负载测试、压力测试、大数据量测试、疲劳强度测试等。Q3.简述性能测试的步骤Q4.简述使用Loadrunner的步骤A4:制定性能测试计划开发测试脚本设计测试场景执

2、行测试场景监控测试场景分析测试结果Q5.什么时候可以开始执行性能测试?A5:功能测试通过;一般需要进行性能测试的系统,都是用户量比较大、业务使用比较频繁、比较重要的功能模块。Q6.LoadRunner由哪些部件组成?A6:主要有三部分组成:Q7.你使用LoadRunner的哪个部件来录制脚本?A7:使用Virtual User Generator录制测试脚本Q8.LoadRunner的哪个部件可以模拟多用户并发下回放脚本?A8:LoadRunner的Controller组件。Q9.什么是集合点?设置集合点有什么意义?Loadrunner中设置集合点的函数是哪个?A9:在性能测试过程中,需要模拟

3、大量用户在同一时刻,访问系统并同时操作某一任务,可以通过配置集合点来实现,多个用户同时进行某操作;集合点可以在服务器上创建密集的用户负载,使LoadRunner能够测试服务器在负载状态下的性能。设置集合点函数:lr_rendezvous(Meeting); / Meeting是集合点名称Q10.什么是场景?场景的重要性有哪些?如何设置场景?A10:场景用于模拟用户实际业务操作;LoadRunner中场景有手工场景和面向目标的场景。设置场景:选择场景类型、设置运行时设置、模拟用户数、加减压方式、持续时间,配置负载生成器。Q11.请解释一下如何录制web脚本?A11:利用Virtual User

4、Generator录制测试脚本,录制步骤:1、选择合适的协议2、设置录制选项3、开始录制Q12.为什么要创建参数?如何创建参数?A12:LoadRunner在录制脚本的时候,只是忠实的记录了所有从客户端发送到服务器的数据,而在进行性能测试的时候,为了更接近真实的模拟现 实应用,对于某些信息需要每次提交不同的数据,或者使用多个不同的值进行循环输入。这时,在LoadRunner中就可以进行参数化设置,以使用多个不同 的值提交应用请求。【参数化】:使用指定数据源中的值来替换脚本录制生成的语句中的参数。【参数化好处】减少脚本的大小提供使用不同的值执行脚本的能力,更加真实的模拟现实应用。【参数化步骤】用

5、参数替换Vuser脚本中的常量值为参数设置属性和数据源Q13.什么是关联?请解释一下自动关联和手动关联的不同。A13:【关联的定义】简单的说:就是把脚本中某些写死(固定)的数据,转变成动态的数据,或者说将前面语句的结果数据保存下来,然后在后面的语句提交请求时使用这些数据。【需要关联的前提条件】:客户端需要从服务器端返回数据中获取部分数据,并将这些部分数据处理后作为自己下一次请求的一部分发出。【自动关联与手工关联的不同】:自动关联是在脚本录制过程中,VuGen会根据已经制定好的规则,自动找出需要关联的值或脚本录制完成后,执行脚本一 次,通过Correlation Studio自动找出需要关联的数

6、据,并建立关联;而手动关联是需要录制两份相同业务流程的脚本,输入的数据要相同,利用WinDiff工具,找出两份脚 本之间不同之处,也就是需要关联的数据,再通过web_reg_save_param函数手动建立关联,将脚本中用到关联的数据参数化。Q14.你如何找出哪里需要关联?请给一些你所在项目的实例。A14:1、录制两份相同业务流程的脚本,输入的数据要相同2、利用WinDiff工具,找出两份脚本之间不同之处,也就是需要关联的数据3、通过web_reg_save_param函数手动建立关联,将脚本中用到关联的数据参数化。示例:通过录制两份脚本,进行对比,可知jsessionid、sap-ext-s

7、id、sap-wd-cltwndid、sap-wd-tstamp需要进行关联。Q15.你在哪里设置自动关联选项?A15:录制选项中进行设置,如下图所示:Q16.哪个函数是用来截取虚拟用户脚本中的动态值?(手工关联)A16:Web_reg_save_param函数主要根据需要做关联的动态数据前面和后面的固定字符串来识别、提取动态数据,所以在做关联时,需要找出动态数据的左、右边界字符串。1.函数原型:int web_reg_save_param (const char *ParamName, , LAST);2.参数说明:ParamNam:存放动态数据的参数名称List of Attributes

8、:其它属性,包含Notfound、LB、RB、RelFrameID、Search、ORD、SaveOffset、Convert、SaveLen。Notfound:指当找不到要找的动态数据时,怎么处理。Notfound=error,当找不到动态数据时,发出一个错误信息,为LoadRunner的默认值。Notfound=warning,当找不到动态数据时,不发出错误信息,只发出警告,脚本会继续执行下去不会中断。LB:动态数据的左边界字符串,该参数为必选参数,并区分大小写。RB:动态数据的右边界字符串,该参数为必选参数,并区分大小写。ORD:指提取第几次出现的左边界的数据,该参数为可选参数,默认值是

9、1。假如值为All,则查找所有符合条件的数据并把这些数据存储在数组中。Search:搜寻的范围。可以是Headers(只搜寻Headers)、Body(只搜寻Body部分,不搜寻Headers)、 Noresources(只搜寻Body部分,不搜寻Header与Resource)或是All(搜寻全部范围,此为默认值),该参数为可选参数。RelFrameID:相对于URL而言,欲搜寻的网页的Frame,此属性可以是All或是具体的数字,该参数为可选参数。SaveOffset:当找到符合的动态数据时,从第几个字符开始才存储到参数中,该参数为可选参数,此属性值不可为负数,其默认值是0.Convert

10、:可能的值有两种:HTML_TO_URL:将HTML-encoded数据转成URL-encoded数据格式。HTML_TO_TEXT:将HTML-encoded数据转成纯文字数据格式。SaveLen:从Offset开始算起,到指定长度内的字符串,才储存到参数中,该参数为可选参数,默认值为-1,表示储存到结尾整个字符串。Q17.你在VUGen中何时选择关闭日志?何时选择标准和扩展日志?A17:在测试场景执行时,关闭日志,因为日志信息过多,也会影响性能测试结果;在调试测试脚本时,可以选择标准或扩展日志,用于输出调试信息。可以在运行时设置中,进行日志设置,如下图所示:Q18.你如何调试LoadRun

11、ner脚本?A18: 通常采用以下方法调试LoadRunner测试脚本断点【方法】在脚本的任意一行上按右键菜单或F9增加断点。单步跟踪【方法】通过菜单命令VUserRun Step by Step或F10,可以控制脚本以语句为单位执行。日志输出【方法】通过日志输出函数lr_message、lr_log_message、lr_output_message输出。对话框输出综上,在实际测试工作中,基本上使用前三种方法,对话框输出基本上没用过。Q19、你在LR中如何编写自定义函数?请给出一些你在以前进行的项目中编写的函数。A19:在编写用户自定义函数之前,需要首先为函数创建外部库(DLL)文件,将这些

12、库文件放在bin目录下,一旦库文件已经被添加并且将用户自定义 函数作为参数,函数应该为以下格式:_declspec (dllexport) char* (char*, char*)Q20.在运行设置下你能更改那些设置?A20:可以修改Run Logic、pacing、Log、Think Time等,见下图;可以测试实际需要,修改相关选项。Q21.你在不同的环境下如何设置迭代?A21:在“运行时设置”中设置,如下图所示:Q22.你如何在负载测试模式下执行功能测试?A22:在负载测试模式下,可以通过同时运行数个虚拟用户,通过增加虚拟用户数,确定服务器在多大的负载量下,仍然可以正常运行,我一般进行核

13、心功能操作,验证核心功能运行是否正常。Q23.什么是逐步递增?你如何来设置?A23:虚拟用户数随着负载时间逐渐增加,可以帮助确定系统响应时间减慢的准确时间点。可以在“加压”选项卡中进行设置:如下图所示,将设置更改为:“每 30 秒启动 2 个 Vuser”Q24.以线程方式运行的虚拟用户有哪些优点?A24:以线程方式运行的虚拟用户,在默认情况下,Controller为每50个用户仅启动一个mmdrv进程,而每个用户都按线程方式来运行,这些线程用户将共享父进程的内存,这就节省了大量内存空间,从而可以在一个负载生成器上运行更多的用户。Q25.当你需要在出错时停止执行脚本,你怎么做?A25:取消运行

14、设置中的“Continue on error”复选框。或者使用lr_abort函数。Q26.响应时间和吞吐量之间的关系是什么?A26:当系统吞吐量未达到系统处理极限时,系统性能不会衰减,交易平均响应时间一般也不会递增,当系统达到吞吐量极限时,客户端交易会在请求队列中排队等待,等待的时间会记录在响应时间中,故交易平均响应时间一般会递增。Q27.说明一下如何在LR中配置系统计数器?A27:以windows资源监控为例,可右键点“添加度量”,输入系统IP、选择平台类型,确定即可,详细参加LR自带操作手册_。对于监控不同类型的操作系统,需要做一些准备工作,可参见监控操作系统资源部分。Q28.你如何识别

15、性能瓶颈?A28:性能瓶颈分为:硬件瓶颈和软件瓶颈性能瓶颈可以通过监控器来分析发现,这些监控器包括应用服务器监控、web服务器监控、数据库服务器监控器和网络监控器;它们可以帮助分析导致响应时间增加的原因;性能度量一般包括响应时间、吞吐量、每秒点击率、网络延迟等等。Q29.如果web服务器、数据库以及网络都正常,问题会出在哪里?A29:问题可能出在系统本身或应用服务器、或为应用编写的代码编写中。Q30.如何发现web服务器的相关问题?A30:可以利用web资源监控器发现web服务器相关问题,在场景执行过程中,可以利用监控器分析web服务器吞吐量、每秒点击率、每秒HTTP响应数、每秒页面下载数,以及web服务器硬件资源使用情况等。Q31.如何发现数据库的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号