性能测试面试题

来源:互联网 发布:sql 按条件合计 编辑:程序博客网 时间:2024/05/07 09:33

1,EBCDIC translation有什么用?
答:能够使部分数据显示它在16进制和ASCII码的格式,并标明偏移量,应用于数据关联

2,编译器和解释器有什么区别?
答:编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机

  器语言来运行此程序,速度很快;
  而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后

  的程序运行的快的. 这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的

  形式)

3,需要关联的数据怎么确定?
答:我认为有一下几种方式来确定:
 (1)通过LR自动关联来确定。
 (2)通过手动关联,查找服务器返回的动态数据,利用关联函数来确定。
 (3)对录制好的脚本,通过“scan action for correlationsCTRL+F8”来进行扫描查找需要关联的数据
 (4)如果知道需要做关联数据的左右边界等信息,可以自己添加相应的关联的规则来录制脚本,从而确定

是要确定关联的数据,不是确定了之后如何关联。在这一点上我一般是去问开发数据库结构主键都是什么,如果没有开发配合的话,就自己逐渐分析请求和响应之间的逻辑关系,有时候能分析出来,只是后一种比较慢。把脚本中某些写死的数据,而服务的来说是动态传值每次不一样的数值给客户端的数据,需要关联的数据。
一般需要关联的数据主要是,客户端与服务器之间需要关联的一些验证信息。如sessionID、安全令牌、一些页面ID、动态的控件ID等等。我在早期的测试工作中,经常会使用LR自带的file diff 去比较两次相同操作的脚本,用来验证需要关联的信息和参数化的参数。

4,LR的协议包分为多少类?
答:应用程序部署解决方案:Citrix ICA
客户端/服务器:DB2 CLIDNSInformixMS SQL ServerODBCOracle2层)、Sybase CtlibSybase DblibWindows Sockets协议。
自定义:C模板、Visual Basic模板、Java模板、JavaScriptVBScript类型的脚本。
分布式组件:适用于COM/DCOMCorba-JavaRmi-Java协议。
电子商务:FTPLDAPPalmPeopleSoft 8 mulit-lingualSOAPWebHTTP/HTML)和双Web/WinSocket协议。
Enterprise Java BeanEJB测试和Rmi-Java协议。
ERP/CRMBaanOracle NCAPeopleSoft-TuxedoSAP-WebSAPGUI
Siebel-DB2 CLISiebel-MSSQLSiebel-WebSiebel-Oracle协议。
传统:终端仿真(RTE)。
邮件服务:Internet邮件访问协议(IMAP)、MS ExchangeMAPI)、POP3SMTP
中间件:JacadaTuxedo67)协议。
流数据:Media PlayerMMS)和Real协议。
无线:i-ModeVoiceXMLWAP协议。
总结的很全面,在录制界面中很容器看到

5,树视图和脚本视图各有什么优点?
答:Tree View的好处是使用户更方便地修改脚本,Tree View支持拖拽,用户可以把任意一个节点拖拽到他想要的地方,从而达到修改脚本的目的。用户可以右键单击节点,进行修改/删除当前函数参数属性,增加函
数等操作,通过Tree View能够增加LoadRunner提供的部分常用通用函数和协议相关函数。
Script View适合一些高级用户,在Script View中能够看到一行行的API函数,通过Script View向脚本中,增加一些其他API函数,对会编程的高手来说很方便,呵呵。
区别在于 Tree View是控件、资源列表试图,比较方便进行编辑,用户不需要关心添加的资源或者函数的内部实现。其优点是可以看到各个资源和页面的显示,比较直观。Script view就是代码脚本的试图。优点是可以比较方便的了解脚本的内部实现,方便扩充脚本。个人觉得没有多大的区别,能熟练掌握就好

6,LR中的API分为几类?
答:至少有Java Vuser API lrapiXML API。还可以添加WindowsAPI和自定义函数库。。
个人觉得有协议自带APILRAPI、自定义的API接口、基于CJAVA语言的API

7,actioninitend除了迭代的区别还有其他吗?
答:暂时想到的是,在initend中不能使用集合点、事务等。
Init是在正式执行脚本前的对虚拟用户的预处理函数。许多对虚拟用户的预先操作可以在里面实现,比如自定义函数、变量、用户登录时的关联(始终让用户使用相同的session),一些客户端测试时环境配置等等。
end
则可以对虚拟用户使用的一些资源进行释放,如内存、游标等等,恢复测试环境,统计信息等等。action使我们关心的核心业务的脚本。
init
end这是初始化和善后的区域

8,HTTP的超时有哪三种?
答:HTTP-request connect timeoutHTTP-request receive timeoutstep download timeout
HTTP
请求连接超时、HTTP 请求接收超时、网络缓冲区大小

9,在什么地方设置HTTP页面filter?
答:在runtime_settingsdownload filter里面进行设置。

10,pot mapping的原理是什么?
答:要录制的应用程序向服务器发送请求的服务器地址和端口改为本地计算机及111端口,在Port Mapping中设置的代理程序再将发往111
端口的所有请求转发给真正的服务器端,相当于loadrunner强制性的将本地某端口的通讯录制了下来,通过这个代理更明确了需要监控的端口和协议。
这个只是端口代理的机制,类似于路由器的工作原理,将一些端口进行映射。

11,如何设置可以让一个虚拟IP对应到一个Vuser?
答:用进程去分配每个Vuser
运行时设置里的“Run Vuser as a thread .”
这个应该在使用IP欺骗的时候可以进行配置。

12,什么是contentcheck?如何来用?
答:ContentCheck的设置是为了让VuGen检测何种页面为错误页面。如果被测的Web 应用没有使用自定义的错误页面,那么这里不用作更改;如果被测的Web应用使用了自定义的错误页面,那么这里需要定义,以便让VuGen 在运行过程中检测,服务器返回的页面是否包含预定义的字符串,进而判断该页面是否为错误页
面。如果是,VuGen就停止运行,指示运行失败。
  使用方法:点击在runtime settings中点击“contentcheck”,然后新建立一个符合要求的应用程序和规

  则,设定需要查找的文本和前缀后缀即可使用。

13,network中的speed simulation是模拟的什么带宽?
答:模拟用户访问速度的带宽。

14,进程和线程有什么区别?
答:进程和线程的区别网上很多,不作过多讨论,重点说一下其在LR中选择的区别。最显著的区别是:线程有自己的全局数据。线程存在于进程中,因此一个进程的全局变量由所有的线程共享。由于线程共享同样的系
统区域,操作系统分配给一个进程的资源对该进程的所有线程都是可用的,正如全局数据可供所有线程使用
一样。在Controller中将使用驱动程序(如mdrv.exer3vuser.exe)运行vuser。如果按进程运行每个vuser,则对于每个vuser实例,都将反复启动同一驱动程序并将其加载到内存中。将同一驱动程序加载到内存中会占用大量的RAM(随机存储器)及其他系统资源。这就限制了可以在任一负载生成器上运行的vuser数量。如果按线程运行每个vuserController为每50vuser(默认情况下)仅启动驱动程序(如mdrv.exe)的一个实例。该驱动程序将启动几个vuser,每个vuser都按线程运行。这些线程vuser将共享父驱动进程的内存段。这就消除了多次重新加载驱动程序/进程的需要,节省了大量内存空间,从而可以在一个负载生成器上运行更多的Vuser
总结的很好,但是要注意有时候一些程序必须要使用进程才可以运行,我曾经遇到过。

15,生成WEB性能图有什么意义?大概描述即可。
答:可以很直观的看到,在负载下系统的运行情况以及各种资源的使用情况,可以对系统的性能瓶颈定位、性能调优等起到想要的辅助作用。
可以定位一些web前段瓶颈,主要是资源下载、JS请求等等。

16,如何刷新controller里的脚本?
答:在controller中,点击detailisRefresh-script即可。


17,WAN emulation是模拟什么的?
答:模拟大量网络基础架构的行为。可以设置突出 WAN 效果的参数(如延迟、丢包、动态路由效果和链接故障),并监控模拟设置对网络性能的影响。

18,如何把脚本和结果放到load generator的机器上?
答:在controller中,点击Results-Results settings,在里面进行相应的设置即可。

19,如何设置才能让集合点只对一半的用户生效?
答:对集合点策略进行相应的设置即可。即在controller中,点击ScenarioRendezvous-policy进行相应的设

 置即可,由于题目中一半的用户没有说明白具体指什么样的用户,现在不好确定具体对里面的哪个选项

 进行设置。

20,在设置windows资源图监控的时候,用到的是什么端口和协议?在这一过程中,会有大概哪些问题?microsoft-ds445 ;要有权限、开启服务
这个应该是要使用对方的RPClocal的服务和一个什么remote regsitry的服务,同时要有管理员的权限吧

原创粉丝点击