LoadRunner常见问题

 LoadRunner常见问题

1.LR 脚本为空的化解措施:

      
1.失去丢ie设置中之老三正支持取消掉

      
2.以系统性能-高级-性能-数据实行保护遭到,添加loadrunner安装目录中之vugen.exe文件.

生或是由录制的URL地址下的是localhost的问题,改成为分配的IP地址或127.0.0.1跃跃欲试。

3、插入文本检查点步骤时,使用web_reg_find,通常TextPfx和TextSfx中见面包含对引号,需要开展转义(用斜杠),例如:

      
web_reg_find(“Search=Body”,

             
“SaveCount=Welcome”,

            
“TextPfx=欢迎<a class=\”drop\”
id=\”viewpro\”
onMouseOver=\”showMenu(this.id)\”>”,

             
“TextSfx=</a>”,

             
LAST)

 遇到flight界面为空的解决之或许方法:

  1、如果安了IE以外的浏览器,并且IE不是默认浏览器,则无从生成录制脚本

  2、如果录制脚本时IE不能够打开,则需拿浏览器的IE工具高级选项中,将“启用第三正值浏览器扩展”的

勾选去丢

  3、lr自带的webtours系统,如果点击Flights选项,出现空白页面,请检查本机oracle的
PERL5LIB环境

      2.LoadRunner录制脚本时怎么非弹来IE浏览器?

  当一华主机上安装多个浏览器时,LoadRunner录制脚本经常遇上不可知开拓浏览器的情,可以据此脚的主意来化解。

  启动浏览器,打开Internet选项对话框,切换至高档标签,去丢“启用第三在浏览器扩展(需要再次启动)”的勾选,然后再次运行VuGen即可解决问题

  提示:通常设置Firefox等浏览器后,都见面勾选上面得选,导致不可知正常录制。因此建议运行LoadRunner得主机上保持一个到底的测试环境。

      3.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”模式进行录制。

      4.运作时的Pacing设置重大影响啊?

    
Pacing主要用来装更迭代脚本的间隔时间。共有三种植方式:A:上次迭代终结晚立刻开始、
B:上次迭代为止后等待固定时间、C:按一定或者随意的工夫距离开始推行新的迭代。

     根据实际得装迭代即可。通常,没有工夫间隔会产生更老的下压力。

    5.运转时设置Log标签中,如果没有勾选“Enable logging”,则手工消息可以发送吗?

  Enable
logging选项就影响机关日志记录和透过lr_log_message发送的音。即使没有勾选,虚拟用户脚本中一经以lr_message、lr_output_message、lr_error_message,仍然会记录该发出的消息。

    6.VuGen支持Netscape的客户关系也?

  不支持。目前之VuGen 8.0本子被只支持Internet
Explorer的客户端证书。录制脚本时好优先从Netscape中导出所待的证书,然后用那导入到Internet
Explorer中,并确保以相同的顺序导出和导入这些证件。而且,在列台将录制或运行需要证明之Web
Vuser脚本的计算机达还设还执行前的进程。

   7.VuGen会修改录制浏览器被的代理服务器设置为?

  会修改。在起来录制基于浏览器的Web
Vuser脚本时,VuGen首先会启动指定的浏览器。然后,VuGen会指示浏览器访问VuGen代理服务器。为这,VuGen会修改录制浏览器上的代理服务器设置。默认情况下,VuGen会立即以代理服务器设置更改为Localhost:7777。录制后,VuGen会将原代理服务器设置还原到拖欠录制浏览器中。因此,在VuGen进行录制的过程被,不得以变动代理服务器设置,否则用无法正常进行。

    8.以LoadRunner脚本如何输出当前系时?

  LoadRunner提供了char *ctime(const time_t
*time)函数,调用参数为一个Long型的整数指针,用于存放返回时之数值表示。

  调用语句与归值如下示例:

  typedef
long time_t;

  Action()

  {

  time_t
t;

  lr_message(“Time in seconds since 1/1/70:
%ld\n”,time(&t));

  lr_message(“System time and date:
%s”,ctime(&t));

  }

  输出结果吧:

  Time in
seconds since 1/1/70: 1185329968

  System
time and date:Wed Jul 25 10:19:28 2007

    9.组成部分Web虚拟用户脚本录制后顿时回放没有其他问题,但是当装迭代次数超过1时,如果展开回放则只能成功迭代一赖。为什么从第二赖迭代初步起错误?

  这种光景大多是由当“Run-time
Setting”的“Browse Emulation”的安装中,勾选了“Simulate a new user on each
iteration”及其下面的取舍项“Clear cache on each
iteration”这有限独选择的意思是历次迭代时拟一个初的用户以及每次迭代时解除缓存。

  由于剧本迭代时,init和end只能执行同一坏,如果每次迭代都套一个初的用户并免去缓存,则用户登录信息以同连消除,因此迭代时或者会见生误。

  10.虚起草客户脚本“Run-time Setting”中之线程和进程运行方式的别?

  如果选“Run Vuser as a
process”,则场景运行时会否各级一个虚拟用户创建一个过程;选择“Run Vuser as a
thread”则以每个虚拟用户作为一个线程来运作,在职责管理器中仅仅看一个mmdrv.exe,这种措施的周转效率还胜,能造成更特别的下压力,时默认选项。

  另外,如果启用了IP欺骗功能,则先在Controller中选中Tools菜单下之“Expert
Mode”,然后拿Tools菜单下的“Options>General”标签页中之IP地址分配办法为安装为和Vuser运行方式同,同也线程或进程方式。

  11.在Controller中运作Web相关测试场景时,经常会面来诸多逾期错误提示,如何处理就好像题目?

  这根本发生脚本的默认超时设置引起。当回放Web脚本时,有时候是因为服务器响应时间较丰富,会生出超时的失实。这时需要修改剧本的运转时安排。

  进入“Run-time
Setting”对话框后,依次进来“Internet
Protocol→Preference”。然后点击“Options…”按钮,进入高档设置对话框,可以改各类超时设置的默认值。

  13胡Windows系统中的CPU、内存等资源仍然充裕,但是模拟的用户数量却上未去-27796?

    
 在Windows计算机的专业设置下,操作系统的默认限制只能采用几百个Vuser,这个范围与CPU或内存无关,主要是操作系统本身规定了默认的最好深线程数所招。要惦记突破Windows这个范围,须修改Windows注册表。以Windows
XP Professional为条例。

      
 (1)打开注册表后,进入注册表项HKEY_LOCAL_MACHINE中的下列关键字:System\CurrentControlSet\Control\Session
Manager\SubSystems。

        
(2)找到Windows关键字,Windows关键字如下所示:

  %SystemRoot%\system32\csrss.exe
bjectDirectory=\Windows

  SharedSection=1024,3072,512 Windows=On
SubSystemType=Windows ServerDll=basesrv,1

  ServerDll=winsrv:UserServerDllInitialization,3
ServerDll=winsrv:ConServerDllInitialization,2

  ProfileControl=Off
MaxRequestThreads=16

  SharedSection=1024,3072,512要字之格式为xxxx,yyyy,zzz。其中,xxxx定义了系统范围堆的卓绝老价值(以KB为单位),yyyy定义每个桌面堆得大小。

      
 (3)将yyyy的设置由3072转移为8192(即8MB),增加SharedSection参数值。

经过对注册表的反,系统以允许运行更多的线程,因而可以处理器上运行更多的Vuser。这意味着能模拟的太充分出现用户数量将非受Windows操作系统的限定,而仅受硬件及内部可伸缩性限制的约束。

    14.Error -27728: Step download timeout (120 seconds)的化解方式

 
loadruner报错:Error -27728: Step download
timeout (120
seconds)如何缓解语法检查通过,但是当出现执行一个询问时报错Action.c(16):
Error -27728: Step download timeout (120 seconds) has expired when
downloading non-resource(s),                                
请问有啥子解决方法,我利用web_set_timeout
,好象不起作用,直接以option中设置timeout时间吗600,(单位应是秒吧)还是不曾于作用,结果尚且还是提示(120seconds),说明要因120秒来判断的;使用lrs_set_recv_timeout,语法检查只是,说明库函数里面没是函数。尝试步骤:设置过时间到600秒,回放还是错。后来本身设置了runt
time setting中之internet
protocol-preferences中的advaced区域发生一个winlnet replay instead of
sockets选项,选项后更回放就水到渠成了。  

  首先LR是经过Microsoft WinInet
DLL去录制web商事的!但是当Control运行的时段她默认通过socket去学请求,因为这些足以真正的模仿带富,而利用Microsoft
WinInet
DLL通过这DLL去拜谒网卡方式去学带富,使得模拟不是异常准确!而且为不支持unix的以,但是利用此的确有时无法处理winnet
Dll的有些请,我当是它的有BUG,比如说:回放时她会检讨Content-Length,但是网页支持receive
more
data时,这时socket模拟会一直守候直到timeout!先说了有优缺点,最后回来这个题目!这个题目分开点儿个点剖析:

  第一:你要是理解web_set_timeout()这个函数的适用范围!比如说一个web_submit_data()中其实涵盖了10只对Server
端的恳求,这个函数是针对性10独请求的总和时间之!(别犯低级错误,timeout分了connect,receive以及download三单有:)
)                                                                           
第二:就是我解释的上面的片BUG问题!WinInet
dll在初本子被拍卖要时可以异步的,就是不再是那种连接等接下来超时模式!但是LR用底socket是一路请求!只有等交timeout才见面离!microsoft已经妇孺皆知表示INTERNET_OPTION_RECEIVE_TIMEOUT
不再适用于 Microsoft Internet Explorer
5.0,显而易见,他们处理要采取了异步处理的措施!呵呵!这生大约可以圆解释你的题目了!呵呵这里,

自上如下:VuGen专用的依据套接字的重播是一模一样种植而伸缩以便进行负荷测试的轻型引擎。使用线程时凡标准之。基于套接字之发动机不支持socks代理服务器。如果在这么的条件受到录制,应该使winInet重播引擎。

    15.性能测试往往需要预备大批量之数量,大批量数额的扭转方法来众多栽,常见的来:

       (1)编写SQL语句来插入数据

(2)使用DataFactory等规范的多少变动工具

       (3)通过LoadRunner录制回放的办法还执行生成大批量多少

       
Tips:

        使用DataFactory插入nchar数据类型的数目时会冒出空值的情况,可以先改数据库的数据类型设置,插了数据后再行变更回去

 

    16.录制脚本中寓中文,出现乱码怎么惩罚?

           把录制选项中的Support
charset选着UTF-8

          
录制脚本后,切换至树视图中,打开相应的剧本页面。在右的PageView中录制的台本呈现中文版式,但是当切换到Server
Response中,所有的国语全部转移成的乱码,如“勌缞仫訆”。

         
原因是劳务器端没有将响应的编码设置为gb2312

以IIS中找到Web.Config文件,在<system.web>….</system.web>节加入<globalization
requestEncoding=”gb2312″ responseEncoding=”gb2312″
fileEncoding=”gb2312″/>后再也录制脚本,乱码变中文。

    17.LoadRunner回放剧本时,在浏览器显示的华语是乱码

解决办法(1):

第一设置Run-Time Settings – Browser – Browser
Emulation – User-Agent

下一场设置IE:

翻开-编码-钩上“自动选择”和Unicode(UTF-8)。

解决办法(2):

使用lr_convert_string_encoding函数来更换编码

下面是一个施用的例证:

lr_convert_string_encoding(lr_eval_string(“{ReplyContents}”),LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8,”ReplyMessage”);

      
web_submit_data(“postreply.aspx_2”,

             
“Action=http://127.0.0.1/postreply.aspx?infloat=1&topicid=2&&inajax=1”,

             
“Method=POST”,

             
“EncType=multipart/form-data”,

             
“RecContentType=text/xml”,

             
“Referer=http://127.0.0.1/showtopic-2.aspx”,

             
“Snapshot=t9.inf”,

             
“Mode=HTML”,

             
ITEMDATA,

             
“Name=iconid”, “Value=0”, ENDITEM,

             
“Name=title”, “Value=”, ENDITEM,

             
“Name=wysiwyg”, “Value=0”, ENDITEM,

             
“Name=checkbox”, “Value=0”, ENDITEM,

             
“Name=message”,
“Value=[localimg=180,112]1[/localimg]\r\n\r\n{ReplyMessage}”,
ENDITEM,

             
“Name=e_mediatyperadio”, “Value=on”, ENDITEM,

             
“Name=sl_attachdesc”, “Value=”, ENDITEM,

             
“Name=attachid”, “Value=”, ENDITEM,

             
“Name=attachdesc”, “Value=”, ENDITEM,

             
“Name=localid”, “Value=”, ENDITEM,

             
“Name=attachdesc”, “Value=”, ENDITEM,

             
“Name=localid”, “Value=1”, ENDITEM,

             
“Name=attachdesc”, “Value=”, ENDITEM,

             
“Name=localid”, “Value=2”, ENDITEM,

             
“Name=emailnotify”, “Value=on”, ENDITEM,

             
“Name=postreplynotice”, “Value=on”, ENDITEM,

             
“Name=postfile”, “Value=”, “File=Yes”, ENDITEM,

             
“Name=postfile”, “Value=D:\\\\图收集\\\\It’s about time.JPG”, “File=Yes”,
ENDITEM,

             
“Name=postfile”, “Value=”, “File=Yes”, ENDITEM,

             
“Name=uploadallowmax”, “Value=10”, ENDITEM,

             
“Name=uploadallowtype”, “Value=jpg,gif”, ENDITEM,

             
“Name=thumbwidth”, “Value=300”, ENDITEM,

             
“Name=thumbheight”, “Value=250”, ENDITEM,

             
“Name=noinsert”, “Value=0”, ENDITEM,

             
LAST);

    18.得以于LR测试脚本的目录中找到参数文件,直接改动参数文件

           
The parameter file is stored in the script directory as .dat file
extension.  It can be opened with a simple text editor like Notepad as
it is stored in pure text format.  Therefore, you can manipulate the
files via the Notepad.  You can also use office applications such as
Microsoft Excel or OpenOffice.org Calc to work on the file.  This
greatly the amount of work required for maintaining a long list of
data.

    19.LR9.x启动VUGen时提示”Failed to connect to server”

            
After upgrading to LoadRunner 9.x I started getting a window popup which
said “Failed to connect to server” every time I opened virtual user
generator (vugen.exe).

The solution
to this was to close virtual user generator and delete the [vugen.ini]
file.

vugen.ini is
found in the %systemroot% folder on your Windows PC (usually C:\WINDOWS
or C:\WINNT).

Once you’ve
deleted the file, virtual user generator will open without any issues
and create a new vugen.ini file automatically.

    20.怎样通缉到手有同样左右界的动态value?

怎么样抓到手有一样左右边界的动态value?例如:

stateID=”d7lg0ehmjkkm6uin3s4boei7oq”>

stateID=”cvopakp46ftsf8mh6l37ti3ubm”>

stateID=”bv9mja8gtgr39ddibm5t9163re”>

web_reg_save_param里的ORD应该什么设置?

ORD:
Indicates the ordinal position or instance of the match. The default
instance is 1. If you specify “All,” it saves the parameter values in an
array.

例子:

char
outFlightParam[50]; // The name of the parameter for
correlation

char
outFlightParamVal[50]; // The formatted value of
outFlightParam

web_reg_save_param(“outFlightVal”,

       
“LB=outboundFlight value=”, “RB=>”,

       
“ORD=ALL”,

       
“SaveLen=18”,

       
LAST);

   
web_submit_form(“reservations.pl”,

       
“Snapshot=t4.inf”,

       
ITEMDATA,

       
“Name=depart”, “Value=London”, ENDITEM,

       
“Name=departDate”, “Value=11/20/2003”, ENDITEM,

       
“Name=arrive”, “Value=New York”, ENDITEM,

       
“Name=returnDate”, “Value=11/21/2003”, ENDITEM,

       
“Name=numPassengers”, “Value=1”, ENDITEM,

       
“Name=roundtrip”, “Value=<OFF>”, ENDITEM,

       
“Name=seatPref”, “Value=None”, ENDITEM,

       
“Name=seatType”, “Value=Coach”, ENDITEM,

       
“Name=findFlights.x”, “Value=83”, ENDITEM,

       
“Name=findFlights.y”, “Value=16”, ENDITEM,

       
LAST);

   
sprintf(outFlightParam, “{outFlightVal_%s}”,

       
lr_eval_string(“{outFlightVal_count}”));

   
sprintf(outFlightParamVal, “Value=%s”,

       
lr_eval_string(outFlightParam));

   
lr_message(“The value argument is : %s”,
outFlightParamVal);

   
web_submit_form(“reservations.pl_2”,

      
“Snapshot=t5.inf”,

      
ITEMDATA,

      
“Name=outboundFlight”,outFlightParamVal, ENDITEM,

       
“Name=reserveFlights.x”, “Value=92”, ENDITEM,

       
“Name=reserveFlights.y”, “Value=10”, ENDITEM,

       
LAST);

    21.运作状况时提醒“Step download timeout (120 seconds) has expired when downloading resource(s)”

vuser_init.c(12): Error -27728: Step download
timeout (120 seconds) has expired when downloading non-resource(s)(出现个别,可以忽略)

vuser_init.c(12): Error -27727: Step download
timeout (120 seconds) has expired when downloading resource(s). Set the
“Step Timeout caused by resources is a warning” Run-Time Setting to
Yes/No to have this message as a warning/error,
respectively

vuser_init.c(12): Error -27796

           
如果以为下载一个页面超过2分钟无是谬误的言语,可以于Run-Time设置中甄选Preferences->Options,修改Step
download timeout(sec)的年月

            

           
或者将“Step timeout caused by resources is a
warning”设置为Yes,这样下蛋充斥资源超时也只是是作警示,不作不当提示,但是于不资源的下载过,则连接会提醒错误的

 

    22.据此strtok函数分割字符串

             需要以loadrunner里面获得“15”(下面红色高亮的组成部分),并做成关联参数。

//Body
response 内容: <BODY><;
PRE>//OK[8,7,5,15,6,5,0,4,0,3,0,3,2,0,0,0,1

用web_reg_save_param取出“8,7,5,15,6,5,0,4,0,3,0,3,2,0,0,0,1”这同样段子,然后据此strtok函数切割出一个个数字,第四单数字就使物色的价值

例如:

extern char
* strtok(char * string, const char * delimiters ); // Explicit
declaration

char
separators[] = “,”;

char *
token;

lr_save_string(“1,2,3,4,5,6″,”str”);

token = (char
*)strtok(lr_eval_string(“{str}”), separators); // Get the first
token

if (!token) {

       
lr_output_message (“No tokens found in string!”);

       
return( -1 );

   
}

while (token
!= NULL ) { // While valid tokens are returned

      
lr_output_message (“%s”, token );

       token
= (char *)strtok(NULL, separators); // Get the next token

  
}

    23.LoadRunner并未打webservice共商的license,只有http的,可免可以完全用http协议模拟webservice?

可以,参考:

  
http://blog.testsautomation.com/2009/01/web-services-performance-using-loadrunner/

  
http://blog.testsautomation.com/2009/05/validating-web-service-response-with-xpath/

    24.以观设置中莫忽视思考时,但是在查阅响应时间之时光什么被LR自动在应时间里减去思考时?

         在analysis中找到了安装是否以告知着涵盖思考时之地方开相应的安装即可:

    25.LoadRunner于运作过程被停止少1半心虚拟用户

Another issue
that I’m facing from time to time is that
LoadRunner stops 50% of running users without any notification, issue,
error message etc. I’ve find out that it happens only when running with
log level set to ‘always send a message’. Because of that, I suggest to
run with log level set to ‘Send message only when error
occur’.

    26.测试RTMP协议应该当LoadRunner选择什么协议来录制?

用flex协议

发生及时几单函数可用:

flex_rtmp_connect  Connects a client to an
RTMP server and sets connection options. 

flex_rtmp_disconnect  Disconnects a client
from an RTMP server. 

flex_rtmp_send  Sends messages to an RTMP
server. 

flex_rtmp_receive  Receives responses from an
RTMP server

Flex can
record and replay scripts involving RTMP (Real Time Messaging Protocol).
In order to enable RTMP simulation, you must configure the recording
options for the Flex protocol.

To enable
RTMP:

1 Open the
Recording Options dialog box by selecting Tools > Recording Options
or clicking the Options button in the Start Recording dialog
box.

2 In the
Network > Port Mapping node click Options.

3 Set the
Send-Receive buffer size threshold to 1500.

    27.如何在LoadRunner中运行QTP脚本?

  1、运行准备:

1)勾选QTP的Tools–Options–Run的”Alow other
Mercury products to run tests and components”

2)录制需要在lr中运作的QTP脚本,并且于QTP脚本中安装工作,Services.StartTransaction
“start”与Services.EndTransaction “start”

2、运行QTP脚本

于LR中运行时选择QTP脚本,为QTP脚本存放目录下文件扩展名为.usr的公文。

 注:LR中运作QTP脚本时,只能有一个Vuser,否则用报错:

  The load
generator is currently running the maximum number of Vusers of this
type

    28.于LR中如何忽略Socket接收数据的印证

以LR中针对Socket进行性测试时,LR会自己看清lrs_receive回来的数量的长度,而如果长不符之言语会时有发生时空推的情形(这是性测试了无可知领之作业),如果成功及时一点呢,经过再三尝试,发现同栽简单的法(用*代具体的长短):

恍如于用:

recv buf1
12

“Hello,
Denny”

改为:

recv buf1
*

“Hello,
Denny”

一切OK。

    29.LoadRunner9.5底Controller中无可知添加Apache的监督

     在C:\Program
Files\HP\LoadRunner\dat\online_graphs中找到online_resource_graphs.rmd文件,修改[Apache]部分被的EnableInUI为1

参考:

http://forums11.itrc.hp.com/service/forums/questionanswer.do?admit=109447626+1274450165814+28353475&threadId=1229523

    30.VB Vuser开发ADO脚本,提示“user-defined type not defined”

思念以VB
Vuser写副法数据操作的过程,然后在VB
Vuser里定义了这全局变量

Private
m_Conn As ADODB.Connection ‘连接对象

Private
m_Reco As ADODB.Recordset ‘结果集

只是以VB
Vuser中不识别这个目标,报发出user-defined type not defined

需以Run-Time
设置中之VBA部分管ADO的库选上

设若因此VB
Script虚拟用户来支付就绝不,直接用CreateObject来创造ADO对象即可

    31.loadrunner9.5录制脚本时出现c:\PROGRA~1\MICROS~1\office12\Grooveutil.DLL时错内存位置访问无效

             
Office2007的题材,IE加载项禁用Groove 
GFSBrowser Helper 组件

    32.LR自带的例子端口号怎么改?

         
LR自带的例证端口号是1080,我怎么样将这个端口设置本身要好想用之捧口号8088,在什么地方设置以LR安装目录下,找到Xitami.config文件,找到portbase,可以修改它(默认是1000);

默认的端口号是portbase+80;要将捧口号改成为8088,就管portionbase改也8008,保存之后虽是了(8088=8008+80)。

    33.用Web_reg_find查找中文字符串时找无交

           
脚本文件里有只default.cfg,里面有个参数是
UTF8InputOutput ,将那价改吧0

    34.替代IP Wizard的脚本

http://hi.baidu.com/higkoo/blog/item/39bbb21bc33d76dcac6e751c.html

LoadRunner自带的“IP
Wizard”用起来非常辛苦,要无停歇的接触,重要之是最终还得重新开系统生效。

乃写个下论替代的:

  1. 倘客户端IP为 192.168.10.31

  2. 比方服务端IP为 192.168.10.10

  3. 消效法的IP为
    110.119.120.122

那,客户端提供添加虚拟IP的BAT脚本:

netsh   
interface    ip    add    address   本地连接   110.119.120.122   
255.255.0.0

对应之去除设置也:

netsh   
interface    ip    del    address    本地连接   110.119.120.122

针对许服务器添加虚拟路由的Shell脚本:

route add
-host 110.119.120.122 gw 192.168.10.31

除去路由的本子:

route del
-host 110.119.120.122 gw 192.168.10.31

诸如此类即使老大有利了,不用还开任何机器,执行脚本就见效,再实施脚本就取消。

    35.什么样自命行调用LoadRunner脚本?

Here is the command line that you need to execute to run a VuGen script
from the command prompt:

  
<LoadRunner>\bin\mmdrv.exe -usr <path to usr
file>

Note:

In order to
get all the other options that go with the command, run mmdrv.exe from
the command prompt without any options.

    36.请问”int64这个项目,在LR中怎么表示”。我将同样段子C的代码放在LR中,LR不认int64这个类型,怎么化解?

管那段C代码做成DLL,然后于LR中调用

    37.LoadRunner监察长途机器Windows资源,提示“net use failed”

解决办法:

在受监控机器及更改本地帐户的共享与安全模式吧经典模式。控制面板->管理工具->本地安全政策->网络访问:本地帐户的共享与安康模式->经典模式。

蹲点连接前的准备干活:

第一保证吃监视的windows系统开启以下二个劳务Remote
Procedure Call(RPC) 和Remote Registry Service

受监视的WINDOWS机器:右击我的微机,选择管理->共享文件夹->共享
在当时中如产生C$这个共享文件夹,(要是没有和谐手动加)

下一场保证在装置LR的机及用运行.输入\\吃监视机器IP\C$
然后输入管理员帐号与密码,如果能看到让监视机器的C盘了,就印证你取得了那么尊机械的总指挥权限,可以应用LR去老是了

   38.LoadRunner脚本中出现乱码问题现象有只链接或者图片名称也中文乱码,脚本运行无法透过。

  错误分析
  脚本录制可能使用的凡URL-based
script方式,如果程序定义的字符集合采用的是国际标准,脚本就会油然而生乱码现象。
  解决办法重新录制脚本,在录制脚本前,打开录制选项配置对话框进行安装,在“Recording
Options”的“Advanced”选项里先行将“Surport
Charset”选中,然后选中支持“UTF-8”的抉择项。

    39.LoadRunner休实行检查措施不当现象在剧本中插入函数Web_find,在剧本中装置文本和图像的检查点,但是当回放过程中连从未指向安的检查点进行自我批评,即Web_find失效。

  错误分析
  由于检查职能会消耗一定之资源,因此LoadRunner默认关闭了针对文件和图像的数码实施保护检查,所以于装检查点后,需要开启检查作用。
  解决办法打开运行条件设置对话框进行安装,在“Run-time
Settings”的“Internet
Protocol”选项里之“Perference”中勾选“Check”下的“Enable Image and text
check”选项。   
需要留意的是,回放脚本时起的错误有时是先后自身之缘故造成的,因此在化解脚论回放问题面前必须确保程序录制出底脚论是无可非议的。

  40.LoadRunner逾期错误:在录制Web商事脚本回放时过时情况经常出现,产生错误的来由为发生过多,解决的不二法门也差。

  错误现象1:Action.c(16):
Error -27728: Step download timeout (120 seconds) has expired when
downloading non-resource(s)。

  错误分析:对于HTTP协议,默认的超时时间是120秒(可以于LoadRunner中修改),客户端发送一个求到服务器端,如果超过120秒服务器端还尚无回结果,则产出逾期错误。

解决办法:首先在运转环境遭受针对逾期进行设置,默认的过时间得装添加一些,再装多次迭代运行,如果还有过现象,需要在“Runtime
Setting”>“Internet
Protocol:Preferences”>“Advanced”区域中装置一个“winlnet replay
instead of sockets”选项,再回放是否成功。

 

  错误现象
2:Action.c(81):Continuing after Error -27498: Timed out while
processing URL=http://172.18.20.70:7001/workflow/bjtel/leasedline/
querystat/ subOrderQuery.do

  错误分析:这种不当时是坐起压力过那个,服务器端太忙碌,无法立刻响应客户端的求而导致的,所以是似是而非是健康现象,是压力过大招的。

  如果压力特别粗就起这个题材,可能是本子某个地方产生错,要细致查看脚本,提示的错误信息会稳定某个具体问题出的岗位。

  解决办法:例如地方的荒唐现象问题一定在某个URL上,需要再行运行一下面貌,同时于其他机器及看这个URL。如果不克看还是时刻了长,可能是服务器或者这个以不能够支持这样的好之载重。分析一下服务器,最好对那个性进行优化。

一旦重运行状况后还有过现象,就使以各种图片中分析一下缘由,例如可以查看是否服务器、DNS、网络等方面有问题。

 

  最后,增加一下运行时之超时设置,在“Run-Time
Settings”>“Internet
Protocol:Preferences”中,单击“options”,增加“HTTP-request connect
timeout” 或者“HTTP-request receive”的价值。

  41.LoadRunner脚本中起乱码:在录制Web合计脚本时出现中文乱码,在回放脚本时会见要回放停止在乱码位置,脚论无法运行。

  错误现象:某个链接或者图片名称也华语乱码,脚本运行无法通过。

  错误分析:脚本录制可能使用的是URL-based
script方式,如果程序定义的字符集合采用的是国际标准,脚本就见面并发乱码现象。

  解决办法:重新录制脚本,在录制脚本前,打开录制选项配置对话框进行安装,在“Recording
Options”的“Advanced”选项里先行用“Surport
Charset”选中,然后选中支持“UTF-8”的选取项。

  42.LoadRunner HTTP服务器状态代码:在录制Web合计脚本回放脚本的经过中,会油然而生HTTP服务器状态代码,例如常见的页面-404谬误提示、-500谬误提示。

  错误现象1:-404 Not
Found服务器并未找到与请求URI相符的资源,但还好继承运行直到了。

  错误分析:此处与请求URI相符的资源在录制脚本时既于交付了同样涂鸦,回放时不得再重复提交同样的资源,而欲改提交资源的内容,每次回放一次于下论都要转移提交的多寡,保证模拟实际条件,造成一定之载重压力。

解决办法:在产出谬误的位置展开脚本关联,在必要经常插入相应的函数。

 

  错误现象2:-500 Internal
Server Error服务器中错误,脚本运行已。

  错误分析:服务器碰到了意想不到状况,使该无法持续应对请。

  解决办法:出现这个错误是沉重之,说明问题充分惨重,需要由问题之起岗位展开检查,此时待这个程序的开发人员配合来解决,而且出的因根据实际状况来定,测试人员无法单独解决问题,而且该尽早缓解,以便为后的测试。

  43.LoadRunner请求无法找到:在录制Web磋商脚本回放脚本的进程中,会产出求无法找到的状况,而致使脚本运行已。

  错误现象:Action.c(41):
Error -27979: Requested form. not found [MsgId:
MERR-27979]

  Action.c(41):
web_submit_form. highest severity level was “ERROR”,0 body bytes, 0
header bytes [MsgId: MMSG-27178]”

  这时在tree
view中扣不至这个组件的相干URL。

荒谬分析:所选的录制脚本模式不正确,通常情况下,基于浏览器的Web应用会动用“HTML-based
script”模式来录制脚本;而并未根据浏览器的Web应用、Web应用被蕴含了和服务器进行交互的Java
Applet、基于浏览器的以中隐含了通往服务器进行通信的JavaScript/VBScript代码、基于浏览器的动中采取HTTPS安全磋商,这时则利用“URL-based
script”模式展开录制。

  解决办法:打开录制选项配置对话框进行设置,在“Recording
Options”的“Internet Protocol”选项里的“Recording”中摘“Recording
Level”为“HTML-based script”,单击“HTML Advanced”,选择“Script. Type”为“A
script. containing explicit”。然后又捎用“URL-based
script”模式来录制脚本。

  44.LoadRunner休实施检查方:在录制Web商谈下论被补充加了自我批评方式Web_find,但是在剧本回放的进程中并无履行。

  错误现象:在剧本中插入函数Web_find,在剧本中装置文本以及图像的检查点,但是当回放过程被连无针对性设置的检查点进行自我批评,即Web_find失效。

  错误分析:由于检查职能会损耗一定的资源,因此LoadRunner默认关闭了针对性文件以及图像的自我批评,所以在设置检查点后,需要敞开检查职能。

解决办法:打开运行环境设置对话框进行设置,在“Run-time
Settings”的“Internet
Protocol”选项里的“Perference”中勾选“Check”下之“Enable Image and text
check”选项。

  45.LoadRunner回放Web Services协议下论错误:LoadRunner 8.0本在录制Web Services协议的本子时正常,但以回放时会见并发错误,提示已脚论运行。

  错误现象:利用LoadRunner
8.0版本来录制Web
Services协议的剧本没有其余错误提示,回放脚本时见面现出如下错误提示“Error:server
returned an incorrectly formatted SOAP response”。

  错误分析:出现这个错误的因由是LoadRunner8.0在录制Web
Services协议的台本时在一个败笔:如果服务器的操作系统凡是华语的,VuGen会自动将WSDL文件之腔改呢<?xml
version=”1.0″encoding=”zh_cn”
?>,所以才会生出此错误提示。

解决办法:下充斥两只补丁,分别吗“LR80WebServicesFPI_setup.exe”和“lrunner_web_
services_patch_1.exe”安装及即可。

    46.LR启动controller报错“transaction monitor not available”

1.大多凡是OS系统问题,修复试试或升级

2.或修复LR试试

    47.Loadrunnber 报错误:Error — memory violation : Exception ACCESS_VIOLATION received.的同等栽情形

Posted on 2011-01-05 12:12蝈蝈俊 阅读(433)评论(0) 编辑收藏 

前不久形容的一个Loadrunner脚本,最后一步是点击“退出”按钮退出登录状态,如下:

web_text_link(“[退出]”,

   
“Snapshot=t18.inf”,

   
DESCRIPTION,

    “Text=[退出]”,

    ACTION,

   
“UserAction=Click”,

    LAST);

return 0;

可会报错误:

Action1.c(94): Error: C
interpreter run time error: Action1.c (94): Error — memory violation :
Exception ACCESS_VIOLATION received.

Action1.c(94): Notify: CCI
trace: Action1.c(94): web_text_link(0x02080870, 0x0208085f
“Snapshot=t18.inf”, 0x02080a42 “DESCRIPTION”, 0x02080853, 0x02080a3b
“ACTION”, 0x020809de “UserAction=Click”, 0x02080a6a “LAST”)

Action1.c(94): Notify: CCI
trace: Compiled_code(0): Action1()

由此考试,发现凡是因
退出后发个活动跳转。

若是退出了代码修改也底就从未问题了。

    web_text_link(“[退出]”,

      
“Snapshot=t18.inf”,

      
DESCRIPTION,

       “Text=[退出]”,

       ACTION,

      
“UserAction=Click”,

       LAST);

   
web_browser(“Sync”,

      
“Snapshot=t18.inf”,

      
DESCRIPTION,

       ACTION,

       “Sync”,

       LAST);

     return 0;

结论:

web_text_link如果发中间跳转,不克在代码的末尾,最后使发一个
Sync。

    48.Step download timeout(sec)设置

    
这个默认是120秒,但是经常我们设安装的再次甚片段,具体装法:Vugen–》Vuser—》Runtime-settings—-》Preferences——》option,将Step download
timeout(sec)默认值120s改成也自己欲的价值,其次如果转移HTTP-reguest connnect
timeout(sec)和HTTP-reguest receive
timeout(sec)也也相应的值。

    49.窜本机tcp连接数

        因为个人pc机的默认的tcp连接数只生15只(xp),所以我们于法虚拟多独用户时时,就会见赶上tcp的连限制,从而报错。修改的方法:windows下运行Patch.exe 输入C,再输入而而之TCP/IP连接数字(一般为500~2000)回车确认输入Y 回车确认。倒计时15秒后收。接着又运行下Patch.exe,看连接数是勿是出于原来的10变成温馨改变了的数值。
Patch.exe 下载地址:http://www.touchboy.cn/2007/05/% …
%E6%8E%A5%E6%95%B0/

    50.有关Error -27791: Error -27790:Error -27740:错误的化解方法:

        错误如下: Action.c(198): Error -27791: Server “www.zcpx.cn”
has shut down the connection prematurely Action.c(198): Error -27790:
Failed to read data from server “www.zcpx.cn”: [10053] Software caused
connection abort Action.c(198): Error -27740: Overlapped transmission of
request to “www.zcpx.cn” for URL
“http://www.zcpx.cn/userEntry.do” failed: WSA_IO_PENDING
解决办法:在剧本的无比前加上web_set_sockets_option(“OVERLAPPED”,”0″);

    51. LR中左代号为27796之一个缓解智

        错误如下:

52.

1A:注册表不克看还是写导致的,可以恢复注册表或卸载(清除注册表,可以使工具)重新安装程序。

假如启支LR自带的实例的劳动经常,出错了,提示:端口已经让别一个劳务占,请问一下会免可知好修改者序原来设定的端口啊?

2A:停止服务后,在先后的装目录\WebTours下找到xitami.cfg文件修改portbase值,注意
默认的端口号是portbase+80,portbase值是1000;要管捧口号改成为8088,就管portbase改也8008,保存之后虽是了(8088=8008+80)。然后又开服务

 

次:LoadRunner面试(笔试)问题整治

1.      啊是负载测试?什么是性质测试?                                                                      

    
负载测试是透过逐渐充实系统负荷,测试系统性能的扭转,并最终确定于满足性能指标的状况下,系统所能领之无比深负载量的测试,例如,访问一个页面的应时间确定未跳1秒,负载测试就是测试在响应时间啊1秒时,系统所能接受的最可怜起访问用户之数。

压力测试通常是以赛负荷情况下来对网的平安进行测试,更实用地发现系统稳定的隐患和体系于负载峰值的法下效果隐患等。

属性测试:指于大势所趋的自律规范下(指定的软件、硬件、网络环境相当),确定系所能够接受的最好要命负荷压力。

2.        性能测试包含了争测试(至少举出3**种)**

 性能测试包含负载测试、压力测试、大数据量测试、疲劳强度测试相当。

3.   简述性能测试的手续

 

第一,分析产品结构,明确性能测试的需求,包括并发、极限、配置和指标等方面的性能要求,必要时基于LOAD测试的相同测略需同时考虑稳定性测试的需求。

  第二,分析应用场景和用户数据,细分用户行为和相关的数据流,确定测试点或测试接口,列示系统接口的可能瓶颈,一般是先主干接口再支线接口,并完成初步的测试用例设计。

  第三,依据性能测试需求和确定的测试点进行测试组网设计,并明确不同组网方案的重要程度或优先级作为取舍评估的依据,必要时在前期产品设计中提出支持性能测试的可测试性设计方案和对测试工具的需求。

  第四,完成性能测试用例设计、分类选择和依据用户行为分析设计测试规程,并准备好测试用例将用到的测试数据。

第五,确定采用的测试工具。

第六,进行初验测试,以主干接口的可用性为主,根据测试结果分析性能瓶颈,通过迭代保证基本的指标等测试的环境。

第七,迭代进行全面的性能测试,完成计划中的性能测试用例的执行。

第八,完成性能测试评估报告。

  在进行性能测试的时候,我们需要知道一些有效的性能指标,下面我们来列出一些主要的性能指标:

  一是,通用指标(指Web应用服务器、数据库服务器必需测试项):

*ProcessorTime:指服务器CPU占用率,一般平均达到70%时,服务就接近饱和;

*Memory Available Mbyte:可用内存数,如果测试时发现内存有变化情况也要注意,如果是内存泄露则比较严重;

*Physicsdisk Time :物理磁盘读写时间情况。

二是,Web服务器指标:

*Avg Rps:平均每秒钟响应次数=总请求时间/秒数;

*Avg time to last byte per terstion(mstes):平均每秒业务角本的迭代次数;*Successful Rounds:成功的请求;

   *Failed Rounds:失败的请求;

*Successful Hits:成功的点击次数;

*Failed Hits:失败的点击次数;

*Hits Per Second:每秒点击次数;

*Successful Hits Per Second:每秒成功的点击次数;

*Failed Hits Per Second:每秒失败的点击次数;

*Attempted Connections:尝试链接数。

三是,数据库服务器指标:

*User 0 Connections :用户连接数,也就是数据库的连接数量;

*Number of deadlocks:数据库死锁;

      *Butter Cache hit:数据库Cache的命中情况。

4.         简述使用Loadrunner**的步骤**

  A4:制定性能测试计划—>开发测试脚论—>设计测试场景—>执行测试场景—>监控测试场景—>分析测试结果

 

5.         嗬时可起实行性测试?

  作用测试由此;一般需要展开性能测试的系统,都是用户量比较深、业务应用比较频繁、比较重大的功能模块。

6.         LoadRunner**出于哪些部件组成?**

  A6:重要发生三部分构成:

 

7.         你使用LoadRunner**的哪个部件来录制脚本?**

     使用Virtual
User Generator录制测试脚本

8.         LoadRunner**的谁部件可以效仿多用户并发下回放脚本?**

  LoadRunner的Controller组件。

9.         什么是集合点?设置集合点有什么意义?Loadrunner**被安集合点的函数是何人?**

     在性能测试过程中,需要效法大量用户以同一时刻,访问系统并同时操作有同任务,可以经配备集合点来贯彻,多独用户同时展开某操作;

    集合点可以在服务器上缔造密集的用户负载,使LoadRunner能够测试服务器在负载状态下的习性。

     设置集合点函数:lr_rendezvous(“Meeting”);  // Meeting是集合点名称

10.     哎是情景?场景的要紧来什么?如何设置场景?

  场景用于模拟用户实际业务操作;

    LoadRunner中场景有手工场景和面向目标的景象。

安装场景:选择场景类型、设置运行时设置、模拟用户数、加减压方法、持续时间,配置负载生成

1.拣场景被需的台本      2.摘啊目标场景,还是指定的手工场景      3.安用户数、设置有负载的设施      4.装实行政策

11.     请解释一下如何录制web**脚本?**

LR通过转发呼吁,来捕获数据包,来形成脚本

解释:1.基于浏览器的应用程序推荐使用HTML-based Script, 脚本中采用

HTML页面的形式来表示,这种方式的Script脚本容易维护,容易理解,使用该选项中的advance中的第一个选项,如果单纯的HTML方式,是不允许使用关联的。

2.不是基于浏览器的应用程序推荐使用URL-based Script,脚本中的表示采用基于URL 的方式,不是很好阅读。

解释:1.是否记录录制过程中的ThinkTime,如果记录,还可以设置最大值,一般我不记录这个值。

2.通知Vugen去重新设置每个action之间的Http context,缺省是需要的。

3.完整记录录制过程的log,

4.保存一个本地的snapshot,可以加速显示

5.把html的title放到web_reg_find函数里面

6.支持的字符集标准

7.Http header的录制,我们采用缺省即可,不需要用web_add_header去录制非标准的header信息。

对录制的content的内容进行filter,不作为resource处理的。

解释:这个就是我前面提到的关联,系统已经预先设置好了一些常见的关联rules,我们录制脚本之前,可以把系统的

 

12.    缘何而开创参数?如何创建参数? 参数:在条件变迁时务必常常脚论有环境变化的力,就待参数化(客户端发送至劳动器端)   1.规定要参数说话的数据
  2.设定规则形式来取值

13.   
什么是关联?请解释一下自动关联和手动关联的两样。

提到:很多构架用sessionid等措施标识不同任务及多少,应用在历次运行时办法发送数据不完全相同,需要使用的体制对录制的台本进行处理,这种机制叫做关联(服务端发送到客户端)

14.   
场景设置有哇几种植方法?

对象场景,手工场景

15.   
而哪些寻找有哪里用关联?请吃一些若所于路的实例
用户登陆,客户端发送请求后,服务端验证正确性后,发送给客户端sessionid,是某种规则来。

16.    你于哪设置自动关联选项? 两地方得装
1.安装允许录制时进行自动关联,可以自定义规则

2.录制完成后,vuser-scan action for
correlations

17.   
哪个函数是为此来截取虚拟用户脚本中之动态值?(手工关联)

web_reg_save_param()函数主要因需要做涉嫌的动态数据前面和后面的定点字符串来辨别、提取动态数据,所以于开涉嫌时,需要找来动态数据的一无是处、右边界字符串。

18.   
君于VUGen中何时选择关闭日志?何时选择正规及扩大日志?
Run-time,log,当调试脚本时,可以但输出错误日志,当在情景找你随便加载脚本时,日志自动成为不可用。 Standard Log Option:选择专业日志时,就会以剧本执行过程被,生成函数的规范日志并且输出信息,供调试用。大型载重测试场景不用启用这个选项。扩展日志包括警告和其它消息。大型载重测试并非启用该选项。用扩展日志选项,可以指定哪些附加信要加到扩展日志被

19.   
君什么样调节LoadRunner脚本? VuGen有零星独选择帮助调节Vuser脚本。Run Step by Step命令和断点(breakpoints)。Option对话框中的调剂设置(Debug setting)项,可以确定于景执行进程中实施轨迹范围。调试信息写以output窗口。可以就此
lr_set_debug_messag函数在剧本中手工安装信息类。如果我们唯有想接到同不怎么截脚本的调式信息。

20.   
而在LR中争编写自定义函数?请于有一部分君当原先进行的花色遭到编的函数。
在开创用户从定义函数前我们得与创办DLL(external libary)。把库房位于VuGen
bin目录下。一旦加了库房,把于定义函数分配做一个参数。该函数应该有所一下格式:__declspec (dllexport) char* <function
name>(char*, char*)。
Milan

21.   
嘿是逐月递增?你怎样来安装?
Ramp up这个选项用于逐渐多服务器的杜撰用户数或负载量。设置一个初始值而且可以于少只迭代之间设置一个值等待。设置Ramp up,请到‘Scenario Scheduling Options’。

22.    以线程方式运行的虚拟用户发生哪优点?
VuGen提供了用几近线程的便利。这使在每个生成器上得以走还多之杜撰用户。如果是坐进程的点子跑虚拟用户,为每个用户加载相同的驱动程序到内存中,因此占有了大量的内存。这就限制了在么生成器上能走的杜撰用户数。如果照线程运行,给一定的有所虚拟用户数(比如100)只是加载一个驱动程序实例到内存里。每个线程共用父亲驱动程序的内存,因此在每个生成器上可跑又多之杜撰用户。

23.   
当你需要在失误时止实施脚本,你怎么开?
lr_abort函数放弃虚拟用户脚本的执行。说明虚拟用户已Action的施行,直接实施vuser_end然后结执行。在产出错误情况下想手工放弃脚本的行,这个函数是实用的。用之函数停止脚本时,Vuser被指定为“Stopped”状态。为了这个函数起作用,开始时就是非克挑Run-Time Settings中的Continue on
error选项。

24.    响应时间和吞吐量中的干是啊?
吞吐量图展示的是杜撰用户每秒钟从服务器收到及之字节数。当与应时间比时,可以发现就吞吐量的回落,响应时间也退,同样的,吞吐量的峰值和无限酷应时间多以又出现。

25.   
证实一下安在LR中配置体系计数器?
通过Web资源监视器,利用这些监控器可以分析web服务器的吞吐量、点击率、每秒http响应数以及每秒下载的页面数。

26.   
什么是think time?think_time有什么用?
思考时是动真格的用户以action之间等的时光。例如:当一个用户从服务器收到至数码时,用户或用在应之前等待几分钟回顾数据,这种推迟被称作思考时。

27.   
业内日志与扩充日志的区分是什么? Standard Log Option:选择正规日志时,就会见当剧本执行进程遭到,生成函数的正式日志并且输出信息,供调试用。大型载重测试场景不用启用这个选项。扩展日志包括警告以及外信息。大型载重测试并非启用该选项。用扩展日志选项,可以指定哪些附加信要加到扩展日志中

28.   
说以下函数和她们之不同之处。
Lr_debug_message lr_debug_message
函数在指定的音讯级别 // 处于活动状态时发送一长达调试消息。如果指定的 // 消息级别不处于活动状态,则非有消息。 Lr_output_message 要发送不是一定错误信息的异常关照, Lr_error_message 函数将错误信息发送到 // 输出窗口以及
Vuser日志文件 Lrd_stmt lrd_exec 函数执行
lrd_stmt设置的 SQL 语句。 Lrd_fetch  函数从结果集中取后续若干行 result set. 函数准备用来 //
通过光标输出字符串(通常也 SQL语句) // 的生一致结出集。对于
CtLib,它起 ct_result // 命令,并且以
ODBC中它运行用于当前数据库

29.   
咦是吞吐量? 单位时外网处理客户端的恳求数。

30.    action**以及init、end除了迭代底界别还发生其他为?**

当init、end中无能够运用集合点、事务等, init、end只实行同一软。

31.   
**
当啊地方设置HTTP页面filter?**

      
在runtime_settings中download
filter里面ACCESS进行设置。

32.    pot
mapping的原理是呀?

      
就是代理服务器

33.    HTTP的超时有啊三种植?

HTTP-request
connect timeout、HTTP-request receive
timeout、step download
timeout

34.   
**
嘿是contentcheck?如何来所以?**

ContentCheck的装是为了给VuGen检测何种页面也左页面。如果让测量的Web应用尚未应用自定义之荒谬页面,那么这里并非作变更;如果吃测的Web应用使用了于定义的错误页面,那么这里要定义,以便为VuGen在运行过程遭到检测,服务器返回的页面是否含有预定义的字符串,进而判断该页面是否为左页

照。如果是,VuGen就歇运转,指示运行失败。

运用方式:点击在runtime settings中点击“contentcheck”,然后新植一个符合要求的应用程序和规则,设定得摸索的公文以及前缀后缀即可使用。

35.    network**备受的speed
simulation是仿照的啊带富?**

依傍用户访问速度的拉动富。

36.   
**
生成WEB性能图有啊意思?大概讲述即可。**

可非常直观的观望,在负载下网的运转状态和各种资源的利用情况,可以针对系统的属性瓶颈定位、性能调优等自至想只要之救助作用。

37.   
**
假若刷新controller里的剧本?**

在controller中,点击detailis-Refresh-script即可。

38.   
进程同线程有啊分别

线程有温馨的全局数据。线程存在于经过遭到,因此一个历程的全局变量由有的线程共享。由于线程共享同样的系区域,操作系统分配受一个经过的资源对拖欠过程的具备线程都是可用的,正而全局数据可供应有线程使用同一。在Controller中将用驱动程序(如mdrv.exe、r3vuser.exe)运行vuser。如果依进程运行每个vuser,则于每个vuser实例,都以反复启动同驱动程序并以那加载到内存中。将平驱动程序加载到内存中见面占大量底RAM(随机存储器)及其余系统资源。这就算限制了足于管一乘载生成器上运行的vuser数量。如果依线程运行每个vuser,Controller也各50个vuser(默认情况下)仅启动驱动程序(如mdrv.exe)的一个实例。该驱动程序将启动几独vuser,每个vuser都照线程运行。这些线程vuser将协同享父驱动进程的内存段。这即排了反复双重加载驱动程序/进程的消,节省了大气内存空间,从而可以当一个负载生成器上运行更多之Vuser.

39.   
怎样把剧本和结果放到load
generator的机及?

    在controller中,点击Results-Results
settings,在其中进行相应的装即可。

40.   
如何设置才会给集合点只针对一半的用户生效?

  
对集合点策略进行对应的安装即可。即当controller中,点击Scenario-Rendezvous-policy进行对应的装置即可,由于题目中“一半的用户”没有说明白具体指哪的用户,现在不好确定具体指向中的哪位选项进行设置。

41.    LRd**的API分为几类**

A:通用的API:,就是跟实际的商无关,在其余商量的本子里都能因此底;

B:针对商事的:像lrs前缀是winsock的;lrd的凡针对性database;

C:自定义的:这个范围就比较宽泛了;比如至少发生Java Vuser API、lrapi、XML API。还得上加WindowsAPI和由定义函数库。

42.   
LR几种日志函数的别?

【lr_message】 int lr_message (const char
*format, exp1, exp2,…expn.);中文解说:lr_message函数将信息发送到日志文件和输入窗口。在VuGen中运作时,输入文件呢output.txt。

【lr_log_message】 int lr_log_message (const char
*format, exp1, exp2,…expn.);中文说:lr_log_message函数将信息发送到Vuser或代办日志文件(取决于应用程序),而休是发送至输出窗口。通过奔日志文件发送错误信息还是其它信息性消息,可以拿欠函数用于调试。                  【lr_error_message】 int lr_error_message (const
char *format, exp1, exp2,…expn. );中文说:lr_error_message函数将错误信息发送到输出窗口以及Vuser日志文件。要发送不是一定错误信息的突出关照,请以lr_output_message。

【lr_output_message】 int lr_output_message (const
char *format, exp1, exp2,…expn.);中文说:lr_output_message函数将涵盖脚论有的的行号的信发送至输出窗口与日志文件。

【lr_debug_message函数组】 int lr_debug_message (unsigned
int message_level, const char *format, … );中文解说:lr_debug_message函数在指定的信息级别处于活动状态时发送一长调试信息。如果指定的信级别不由活动状态,则免发送信息。您可以从用户界面或者采用lr_set_debug_message,将处活动状态的消息级别设置为MSG_CLASS_BRIEF_LOG或MSG_CLASSS_EXTENDED_LOG。要确定当前级别,

请使用lr_get_debug_message。 unsigned int
lr_get_debug_message ( );中文说明:lr_get_debug_message函数返回时的日志运行时设置。该装规定发送至输出端的消息。日志设置是利用运行时设置对话框或通过动用lr_set_debug_message函数指定的。int lr_set_debug_message
(unsigned int message_level, unsigned int on_off); 中文说:lr_set_debug_message函数设置脚本执行的调剂消息级别message_lvl。通过安装信息级别,可以确定发送哪些信息。启动设置的法子是以LR_SWITCH_ON作为on_off传递,禁用设置的办法是传递LR_SWITCH_OFF。

【lrd_stmt】:将SQL语句与光标关联

【lrd_fetch】:提取结果集中得生同样长达记下

43.   
性能瓶颈分析方法?

同一场景 1.微用户量的状态下测试 2.特别用户量情况下之测试 分析的不二法门: 整个系统架构分析,系统应时间消耗,利用图表分析
查看工作应时间,通过作业摘要图分析事情应时间,那个吃最充分(通过有些用户量和充分用户量的应时间分析,查看那个事情应时间高),确定哪一部分效能是性的瓶颈,分析window resource图表,查看cpu
使用下列计数器标识cpu瓶颈
Processor\
Interrupts/sec Processor\ % Processor Time Process(process)\ %
Processor Time System\ Processor Queue Length 通过其来规定是否硬件本身出现瓶颈,或者更规定该怎么去判断性能有瓶颈的地方!
下一致步去判断进程,那个进程消耗cpu最高 下边就有良多种场面用而协调失去判断,有或是经过调用了之函数消耗了系统资源形成上的问题,也发生或是后台数据库出现的题材(这个即将扣押您的系布局是怎么的,比如你的db服务器和应用服务器都安排在同一台机器上)
性能有瓶颈有为数不少地方,所以要进一判断,是否是后台数据库的题材还有待分析,是那长长的告句导致的问题要进一步分析判断。
分析原则: • 具体问题具体分析(这是由不同之运用体系,不同之测试目的,不同的性质关注点)
• 查找瓶颈时照以下顺序,由易到难。 服务器硬件瓶颈-〉网络瓶颈(对局域网,可以免考虑)-〉服务器操作系统瓶颈(参数配置)-〉中间件瓶颈(参数配置,数据库,web服务器等)-〉应用瓶颈(SQL语句、数据库设计、业务逻辑、算法等)
注:以上过程并无是每个分析着还待之,要因测试目的和要求来确定分析的深。对一些要求没有之,我们解析到以系统于将来十分之负载压力(并发用户数、数据量)下,系统的硬件瓶颈在哪儿就足足了。
• 分段排除法很实用 分析的消息来自: •1 根据气象运行过程被之失实提示信息 •2 根据测试结果收集至的监控指标数据 一.错误提示分析 分析实例: 1 •Error: Failed
to connect to server “10.10.10.30:8080″: [10060] Connection •Error:
timed out Error: Server “10.10.10.30″ has shut down the connection
prematurely 分析: •A、应用服务死掉。 (小用户时时:程序上的问题。程序及处理数据库的问题)
•B、应用服务没有死 (应用服务参数设置问题) 例:在不少客户端连接Weblogic应用服务器被拒,而当劳务器端没有不当显示,则闹或是Weblogic中之server元素的AcceptBacklog属性值设得过低。如果老是时收取connection
refused消息,说明应加强该值,每次增加25% •C、数据库的连接 (1、在应用服务的性能参数可能极端小了
2、数据库启动的无限大连接数(跟硬件的内存有关)) 2  Error: Page
download timeout (120 seconds) has expired 分析:可能是以下原因造成
•A、应用服务参数设置太死招服务器的瓶颈 •B、页面被图纸太多 •C、在程序处理表底早晚检查字段太大多 二.监控指标数量解析 1.最酷并发用户数: 应用体系于时环境(硬件环境、网络环境、软件条件(参数配置))下能够经受的极其要命并发用户数。
在方案运行着,如果起了盖3单用户的事情操作失败,或出现了服务器shutdown的景,则印证当当前条件下,系统受无了当下出现用户的负荷压力,那么极端要命并发用户数就是前方一个从来不出现这种状况的并发用户数。
如果测得的极致深并发用户数到达了性能要求,且每服务器资源气象不错,业务操作响应时间吗达到了用户要求,那么OK。否则,再根据各个服务器的资源气象及事务操作响应时间越分析由所在。
2.事情操作响应时间: • 分析方案运行状态应从平均事务应时间图与作业性能摘要图开始。使用“事务性能摘要”图,可以规定以方案执行中应时间了长之业务。
• 细分事务并分析每个页面组件的性。查看了长之事情应时间是由于安页面组件引起的?问题是否以及网络要服务器有关?
• 如果服务器耗时过长,请用相应的劳动器图确定来题目的服务器度量并查证服务器性能降低之缘故。如果网络耗时过长,请用“网络监视器”图确定致性瓶颈的纱问题
3.服务器资源监控指标: 内存: 1 UNIX资源监察中指标外存页交换速率(Paging
rate),如果该值偶尔走高,表明这有线程竞争内存。如果持续好高,则内存可能是瓶颈。也说不定是外存访问命中率低。
2
Windows资源监察丁,如果Process\Private
Bytes计数器和Process\Working
Set计数器的价在增长时外连发升高,同时Memory\Available
bytes计数器的值持续下降,则很可能有内存泄漏。 内存资源成为系统性能的瓶颈的先兆: 很高的换页率(high
pageout rate); 进程进入未活动状态; 交换区所有磁盘的运动次数可大; 可大的全局系统CPU利用率; 内存不够出错(out of
memory errors) 处理器: 1 UNIX资源监察(Windows操作系统同理)中指标CPU占用率(CPU
utilization),如果该值持续越95%,表明瓶颈是CPU。可以设想增加一个计算机或更换一个还快之计算机。如果服务器专用于SQL Server,可承受之顶深上限是80-85%
合理运用的界定在60%交70%。 2 Windows资源监察着,如果System\Processor Queue
Length大于2,而计算机利用率(Processor
Time)一直十分没有,则是正在计算机阻塞。 CPU资源变成系统性能的瓶颈的前兆: 很缓慢的响应时间(slow
response time) CPU空闲时呢零星(zero percent idle CPU) 过高的用户占CPU时间(high
percent user CPU) 过强之网占用CPU时间(high
percent system CPU) 长时间的出死丰富的运转过程队列(large run queue size sustained
over time) 磁盘I/O: 1 UNIX资源监察(Windows操作系统同理)中指标磁盘交换率(Disk
rate),如果该参数值一直特别高,表明I/O有题目。可考虑更换又快之硬盘系统。
2
Windows资源监察中,如果 Disk Time和Avg.Disk Queue
Length的价老高,而Page
Reads/sec页面读取操作速率很没有,则可能存在磁盘瓶径。 I/O资源变成系统性能的瓶颈的兆头: 过大的磁盘利用率(high disk utilization) 太长之磁盘等待队列(large disk queue length) 等待磁盘I/O的年华所占有的百分率太强(large percentage of time waiting
for disk I/O) 太胜的物理I/O速率:large
physical I/O rate(not sufficient in itself) 过低之复苏存命中率(low buffer cache hit ratio(not
sufficient in itself)) 太丰富的运转过程队列,但CPU却空闲(large run queue with idle CPU) 4.数据库服务器:
SQL
Server数据库: 1 SQLServer资源监控着指标缓存点击率(Cache Hit
Ratio),该值越强越好。如果持续低于80%,应考虑增加内存。 2 如果Full Scans/sec(全表扫描/秒)计数器显示的值比较1还是2胜,则答应分析你的查询以确定是不是真正用全表扫描,以及SQL查询是否好给优化。 3 Number of
Deadlocks/sec(死锁的数码/秒):死锁对应用程序的可伸缩性非常有害,并且会造成恶劣之用户体验。该计数器的价必须为

相关文章