loadrunner模拟笔试题目0519

时间:2024.3.31

软件性能测试模拟笔试题目(一)

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

一、            填空题(1*15=15分)

1.        软件性能测试的目的是为了    对软件系统的性能情况给于评价,并发现可能存在的性能问题                                             

2.        常见的性能测试策略有                                            

答案:基准测试,并发测试,在线测试,场景测试,负载测试,疲劳测试,极限测试,吞吐量测试,大数据量测试,内存泄漏测试等

3.   LoadRunner由 Analysis    Controller    Virtual User Generator   三大模块组成,功能分别为  用于录制脚本  用于创建运行及监视场景 用于分析测试结果  。

4.   在用LoadRunner进行性能测试过程中Run-Time Setting的超时设置常用的有HTTP-request connect timeout(sec)HTTP-request receive timeout(sec) Step download timeout  三种。

二、            简答题(3*15=45分)

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

答案:

测试设计阶段:

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

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

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

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

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

测试环境准备:

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

  2)搭建测试环境;

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

测试执行阶段:

  1)录制脚本;

  2)调试脚本;

  3)执行场景;

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

测试分析阶段:

  1)分析测试数据;

提交测试报告:

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

答案:

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

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

l  请求响应时间

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

          包括:client端响应时间+网络响应时间+Server端响应时间。

l  事务请求响应时间

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

l  吞吐率

           单位时间在网络上传输的数据量,是衡量网络性能的主要指标。

l  TPS(Transaction Per Second)

           每秒钟系统能够处理的交易或事务的数量。它是衡量系统处理能力的重要指标。TPS是LoadRunner中重要的性能参数指标。

l  点击率(Hit Per Second)

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

l  资源利用率

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

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

答案:  int lrs_save_searched_string (char* s_desc, char* buf_desc, char* param_name,
        char* left_boundary, char* right_boundary, int ordinal, int offset,
        int param_len );
        s_desc:          socket连接的名称
        buf_desc:        缓冲区名称
        param_name:     变量名存储查找到的值
        left_boundary    左边界
        right_boundary   右边界
        ordinal          存储查找到的第几个值
        offset           偏移量,相对于左边界的偏移量
        param_len        提取数据的长度,没有右边界必需设置。

4.   简述LoadRunner的工作原理?

答案:LR的工作原理是通过用户执行被测程序的客户端,在VuGen中录制被测系统的客户端和服务器的协议交互,生成脚本,然后在Controller中控制Load Generator,按照一定的配置(又称为场景),模拟一定数量的用户,对服务器产生压力,同时对被测系统涉及的操作系统,数据库,中间件等资源进行监控,收集压力情况下的资源信息,测试结束后形成测试结果和监控数据,在结果分析器中进行分析,最后生成测试结果报告。

5.        LaodRunner脚本中action()和ini()t、end()除了迭代的区别还有其他吗?

答案:集合点只能插入到Action 部分,vuser_init和vuser_end 中不能插入集合点。action()和init、end()都可以插入事务点。

6.        什么是集合点?设置集合点有什么意义?LoadRunner中设置集合点的函数是哪个?

答案:集合点:是一个并发访问的点,例如在测试计划中,可能会要求系统能够承受1000 人同时提交数据,在LoadRunner 中可以通过在提交数据操作前面加入集合点,这样当虚拟用户运行到提交数据的集合点时,LoadRunner 就会检查同时有多少用户运行到集合点,如果不到1000 人,LoadRunner 就会命令已经到集合点的用户在此等待,当在集合点等待的用户达到1000 人时,LoadRunner 命令1000 人同时去提交数据,并发访问的目的。
注意:集合点经常和事务结合起来使用,常放在事务的前面,集合点只能插入到Action 部分,vuser_init和vuser_end 中不能插入集合点。集合点函数如下:lr_rendezvous(“SubmitData”)

7.        录制Web脚本时,生成的脚本中存在乱码该如何解决?

答案:录制脚本前,打开录制选项配置对话框Record-Options,进入到Advanced标签,先勾选“Support charset”,然后选择中支持UTF-8再次录制,就不会出现中文乱码问题了。

8.        HTML-based script与URL-based script的脚本有什么区别?

答案:使用“HTML-based script”的模式录制脚本,VuGen为用户的每个HTML操作生成单独的步骤,这种脚本看上去比较直观;使用“URL-based script”模式录制脚本时,VuGen可以捕获所有作为用户操作结果而发送到服务器的HTTP请求,然后为用户的每个请求分别生成对应方法。
通常,基于浏览器的Web应用会使用“HTML-based script”模式来录制脚本;而没有基于浏览器的Web应用、Web应用中包含了与服务器进行交互的Java Applet、基于浏览器的应用中包含了向服务器进行通信的JavaScript/VBScript代码、基于浏览器的应用中使用了HTTPS安全协议,这时使用“URL-based script”模式进行录制。

9.        network中的speed simulation模拟的是什么带宽?

答案:模拟用户访问速度的带宽自定义带宽(作用到虚拟用户)

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

答案:对集合点策略进行相应的设置即可。即在controller中,点击Scenario-Rendezvous-policy进行相应的设

11.    使用LoadRunner进行综合场景测试,如何设置能够使被测系统所受压力减轻,请分别加以说明。

答案:若使被测系统所受压力减轻,可从如下方面进行综合调解:

测试脚本中think time值调长,此处think time指在transaction外部的时间;

Controller中Run-Time Setting的Pacing和think time设置值调长;

用户的并发量调整

虚拟用户登录时使用递增策略,间隔稍长。

12.    如何用LoadRunner实现多机联合性能测试?

答案:多机联合测试模型能够有效的提供大负载量进行并行测试,并且具有负载均衡的能力,
将大负载量分配到若干个代理PC 机上进行联合测试。相较于单个测试PC 机进行独立测试所
产生的负载量以及消耗的系统资源,多机联合测试模型能够产生规模更大的测试负载量,而
且对每个代理PC 机而言也大大减少了系统资源的消耗……

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

答案:Pacing:即在场景的两次迭代 (iteration) 之间,加入一个时间间隔(步长)。

作用:降低单个用户启动请求的速度。间歇会减少请求在线程中驻留的时间,从而提供更符合现实的响应时间。

14.    LoadRunner中,如果Web窗体中包含有JavaScript 脚本,那么在TreeView 视图中显示可能会有问题。如何解决这个问题?

答案:可以在“General”选项中进行适当设置。单击“Tools”菜单选择“General Options”,如图所示。 进入图所示的设置窗口,切换到“Correlation”选项卡上,选中“Enable Scripting and Java applets on Snapshots viewer”的复选框即可。  单击“OK”后,设置完毕。

   

  选择“General Options” 

  

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

答案:进入被监视windows系统,开启以下二个服务:Remote Procedure Call(RPC)和Remote Registry Service;在controller 中,Windows Resources窗口中右击鼠标选择Add Measurements,添加被监控windows的IP地址,选择所属系统,然后选择需要监控的指标就可以开始监控了。

三、            LoadRunner工具使用题:(8*2=16分)

1.        web系统中,username参数表为file类型,表中有12个值,分别A、B、C、D、E、F、G、H、I、J、K、L。测试场景中虚拟并发用户数设为4,迭代次数设为3,参数中Select next row与Update value on分别为(Sequential, Each Iteration)与(Unique, Once)时,写出迭代3次的取值情况。

(Select next row, Update value on)        虚拟用户取值(VUi:迭代时取值)

(Sequential, Each Iteration)

VU1:A,B,C

VU2:A,B,C

VU3:A,B,C

VU4:A,B,C

(Unique, Once)       

VU1:A,A,A

VU2:B,B,B

VU3:C,C,C

VU4:D,D,D

2.        web系统脚本录制过程中,两次录制同一功能点,在View Tree的Server Response中产生的字符串分别为:

Server Response:name="_id_Node " value=" RSDP0013425" />", ENDITEM,

Server Response:name="_id_Node " value=" RSDP1203655" />", ENDITEM,

为脚本回放成功,需要对字符串中某些字符做一定处理,写出详细实现方法。

答案(概要):发现文中两个字符串为动态ID;对动态ID进行处理,利用下面函数,将动态ID的值取出保存在“id”变量中。

   web_reg_save_param("id","LB=Server Response:name=\"_id_Node \" value=\" ","RB=\" \/>\", ENDITEM,",LAST);lr_log_message("%s",lr_eval_string ("{id}"));在后续代码中如遇到该动态ID可由“id”变量代替。

四、 【数据库应用】现有Customers表和Sales表的数据如下:(9分)

Customers表:

CustID        Name          City              Discount

449320        Adapto         PortLand            0.05

890003        AA           PortLand            0.05

888402        Seaworth    Albany              0.04

Sales表:

SaleID        CustID        SaleMount

234112        499320        8000

234113        888402        6500

234114        499320        5900

234115        890003        4500

要求:

1)        给出查询语句,描述:在Customers表中查询名字为AA的查询语句;

2)        给出删除操作,描述:在Sales表中删除SaleID为234115的语句。

3)        根据以下结果表给出多表查询语句。

SaleID        CustID        Name         Discount        SaleMount

234112        499320        Adapto         0.05          8000

234113        888402        Seaworth   0.04          6500

234114        499320        Adapto         0.05          5900

234115        890003        AA            0.05          4500

1)给出查询语句,描述:在Customers表中产讯名字为AA的查询语句;

答案:select * from Customers where Name =‘AA’

2)给出删除操作,描述:在Sales表中删除CustID为234115 的语句。

答案:delete SaleID ,CustID,SaleMount from Sales where CustID = 234115 

3)根据以下结果表给出多表查询语句。

SaleID        CustID        Name         Discount        SaleMount

234112        499320        Adapto         0.05          8000

234113        888402        Seaworth     0.04          6500

234114        499320        Adapto         0.05          5900

234115        890003        AA             0.05          4500

答案:select SaleID,CustID,Name ,Discount,SaleMount from Customers C ,Sales S

       Where S. CustID=C. CustID

五、实践题(15分)

下面是一个项目的性能测试结果,请分析可能存在的性能问题。





答案:

1、单用户查询的响应时间为51.77秒,时间过长,表明查询工作量大。建议优化查询SQL语句,尽可能用上合适的索引,明显缩短查询时间;

2、从资源占用情况来看,应用服务器没有明显压力,数据库服务器存在明显的资源争用现象;

3、磁盘读表现明显,20用户并发执行时磁盘读平均值为108.14M字节/秒,峰值达到192.11M字节/秒,这是总体响应时间过长的主要原因;

4、CPU的占用率情况表现正常,但CPU的等待率较高,40用户并发执行时CPU平均等待率为45.51%,峰值达到89.40%,表明CPU经常处于磁盘I/O读入数据的等待之中,这同样能够证明磁盘I/O构成当前系统主要性能瓶颈。

更多相关推荐:
Diogenes and Alexander 翻译

Lesson18DiogenesandAlesander他躺在光溜溜的地上赤着脚胡子拉茬的半裸着身子模样活像个乞丐或疯子可他就是他而不是别的什么人大清早他随着初升的太阳睁开双眼搔了搔痒便像狗一样在路边解手他在公...

Diogenes and Alexander 戴奥吉尼斯和亚历山大

GilbertHighetThisarticlebythelateclassicistGilbertHighetdescribesameetingbetweentwosharplycontrastingpers...

Diogenes and Alexander retelling第欧根尼和亚历山大

ThepassagecanbedevidedintotwopartsthefirstparttalksaboutDiogenesthesecondpartisaboutDiogenes39meetingwithAlexanderI...

大学英语(四)Diogenes and Alexander 戴奥吉尼斯和亚历山大

DiogenesandAlexander戴奥吉尼斯和亚历山大TheDogHasHisDayGilbertHighetThisarticlebythelateclassicistGilbertHighetdesc...

Thoughts After Diogenes and Alexander

TheQuestThatNeverEndsThisessayontheencounterofDiogenesandAlexanderisreallythoughtprovokingIknewalittleabouttheDoggi...

Diogenes_and_Alexander__戴奥吉尼斯和亚历山大

GilbertHighetThisarticlebythelateclassicistGilbertHighetdescribesameetingbetweentwosharplycontrastingpers...

Diogenes and Alexander

DiogenesandAlexanderLyingonthebareearthshoelessbeardedhalfnakedhelookedlikeabeggaroralunaticHewasonebutnottheotherH...

Diogenes and Alexander

DiogenesandAlexanderGilbertHighetThisarticlebythelateclassicistGilbertHighetdescribesameetingbetweentwosh...

Waiting for Goldie

WaitingforGoldieDannysgrandfatherhasmanypigeonsoneofthemhasapairofgoldeneyesandsheisquiterareBecauseofhereyesshesca...

Great Expectations远大前程读后感

confusionlifestylewascontinueduntilMrsJoediedhewasfeelingtremendousgriefandremorseSeveralyearsgobyMagwitchthecrimew...

A_Review_of_A_Christmas_Carol《圣诞颂歌》读后感(英文)

TheReportonAChristmasCarolAChristmasCarolaninterestingandattractivenoveliswrittenbyCharlesDickensThewholestoryisabo...

The Cop and the Anthem警察与赞美诗读后感

TheCopandtheAnthemTheCopandtheAnthemisoneofOHenry39srepresentativeworksOHenryisoneofthemostfamousAmericancriticalre...

diogenes and alexander读后感(13篇)