ACCESS[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的一个化解方法
            错误如下:
  4. 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里面进行设置。
    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(死锁的数码/秒):死锁对应用程序的可伸缩性非常有害,并且会促成恶劣之用户体验。该计数器的价值必须为0。
    4 Lock
    Requests/sec(锁请求/秒),通过优化查询来减少读取次数,可以抽该计数器的价。
    Oracle数据库:
    1
    如果任意内存接近于0而都库快存或数字典快存的命中率小于0.90,那么要多SHARED_POOL_SIZE的大小。
    快存(共享SQL区)和多少字典快存的命中率:
    select(sum(pins-reloads))/sum(pins) from v$librarycache;
    select(sum(gets-getmisses))/sum(gets) from v$rowcache;
    随便内存 select * from v$sgastat where name=’free memory’;
    2
    如果数据的苏存命中率小于0.90,那么要加大DB_BLOCK_BUFFERS参数的价(单位:块)。
    缓冲区高速缓存命中率:
    select name,value from v$sysstat where name in (‘db block gets’,
    ‘consistent gets’,’physical reads’) ;
    Hit Ratio = 1-(physical reads / ( db block gets + consistent gets))
    3 如果日志缓冲区申请之价比较生,则承诺加大LOG_BUFFER参数的值。
    日记缓冲区的申请情况:
    select name,value from v$sysstat where name = ‘redo log space requests’
    ;
    4 如果内存排序命中率小于0.95,则承诺加大SORT_AREA_SIZE以避免磁盘排序。

外存排序命中率:

相关文章