【LoadRunner】loadrunner常见问题汇总

百闻不如一表现,百说不如一演习,实践是休移的真理。

LoadRunner常见问题
1.LR 脚本为空的解决方法:

1、jsp基础

1.失丢ie设置中的老三在支持取消掉

1.1、jsp的施行过程:

2.在网性能-高级-性能-数据实行保护着,添加loadrunner安装目录中之vugen.exe文件.

jsp文件  –>  翻译成Java文件  –> 编译成class字节码文件  –> 
构造类对象  –>  调用方法  –>
Tomcat的work目录下存放jsp运行时的临时文件

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

1.2、jsp语法

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

jsp表达式:<%=变量或表达式%> 向浏览器输出变量或表达式的结果

web_reg_find(“Search=Body”,

jsp脚本:<%java代码%> 执行Java代码 
原理:翻译到_jspService()方法中

“SaveCount=Welcome”,

jsp声明:<%!变量或方法%> 声明jsp的分子变量或成员方法

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

jsp注释:<%!– jsp注释 –%>
注释jsp代码,不会见翻到Java文件,也不见面执行

“TextSfx=</a>”,

1.3、jsp文件之编码问题

LAST)

pageEncoding:告诉Tomcat服务器使用啊编码翻译jsp文件(jsp –> java)

2、遇到flight界面为空的化解之或者方法:

contentType:Tomcat服务器发送给浏览器的数据编码(Tomcat服务器 –> 
浏览器)

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

1.4、异常错误系

2、如果录制脚本时IE不可知打开,则需要以浏览器的IE工具高级选项中,将“启用第三在浏览器扩展”的

errorPage:当前jsp页面的错误处理页面

勾选去丢

isErrorPage:指定当前页面是否为错误处理页面;false不是,则不克使用exception内置对象,反的可

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

全局处理页面

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

<!-- 全局错误处理页面配置 -->
<error-page>
     <error-code>500</error-code>
     <location>/page/500.jsp</location>
</error-page>

  当一华主机上安装多只浏览器时,LoadRunner录制脚本经常遇上不能够开拓浏览器的状,可以就此脚的方来缓解。

2、jsp的嵌入对象

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

request;response;config;application;session;exception;page;out;pageContext

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

2.1、out对象:out对象类型,JspWriter类,相当给带缓存的PrintWriter

3.HTML-based script同URL-based
script的脚本有什么界别?

JspWriter:向jsp缓冲区写有内容(1、缓冲区满了;2、刷新缓存区;3、关闭缓存区;4、执行了jsp页面)

用“HTML-based
script”的模式录制脚本,VuGen为用户的每个HTML操作生成独立的手续,这种本子看上去较直观;

PrintWriter:直接向浏览器写有内容

应用“URL-based
script”模式录制脚本时,VuGen可以捕获所有作为用户操作结果一旦发送至服务器的HTTP请求,然后呢用户之每个请求分别生成对应措施。

3、jsp中之季个域对象:保存与获取数据,用于数据共享

  通常,基于浏览器的Web应用会利用“HTML-based
script”模式来录制脚本;而没基于浏览器的Web应用、Web应用中寓了与服务器进行交互的Java
Applet、基于浏览器的采用中蕴含了于服务器进行通信的JavaScript/VBScript代码、基于浏览器的运用被使了HTTPS安全磋商,这时用“URL-based
script”模式展开录制。

pageContext(page域);request;session;application(context域)

4.运转时之Pacing设置重大影响啊?

4、EL表达式(替换jsp表达式):向浏览器输出域对象吃之变量值或表达式计算的结果
${ }

 
Pacing主要用来装双重迭代脚本的间隔时间。共有三栽方法:A:上次迭代了却晚即刻起、
B:上次迭代竣工后伺机固定时间、C:按一定或随意的时距离开始实践新的迭代。

输出骨干数据列变量:从四单地区中取得:${name};指定域获取:${pageScope}\

 根据实际用设置迭代即可。通常,没有时间距离会生更甚之压力。

5、jsp标签(替换jsp脚本)

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

5.1、内置标签(动作标签):不待以jsp页面导入标签

  Enable
logging选项就影响机关日志记录及通过lr_log_message发送的音讯。即使没有勾选,虚拟用户脚本中设用lr_message、lr_output_message、lr_error_message,仍然会记录其来的信。

转车标签:<jsp:forward />

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

涵盖标签:<jsp:include /> 
包含与给含有的页面先各自翻译成Java源文件,然后运行时当联合在同步

  不支持。目前之VuGen 8.0版中只是支持Internet
Explorer的客户端证书。录制脚本时得以优先由Netscape中导出所欲的证件,然后拿该导入到Internet
Explorer中,并保管以同等的逐一导出和导入这些关系。而且,在各个台将录制或运行需要证明之Web
Vuser脚本的计算机及且如重执行前的经过。

动态包含:<jsp:include page=”被含有的页面”
/>;可以向被含有页面传递参数;先翻在联合

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

静态包含:<%@include
file=”被含有的页面”>;不克于吃含有页面传递参数;先统一在翻译

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

6、JSTL标签:Java标准标签库

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

基本标签库:C标签库;

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

国际化标签:fmt标签库;

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

EL标签库:fn函数库;

  typedef long time_t;

7、自定义标签

  Action()

7.1、编写一个常备的Java类,继承SimpleTagSupport类,叫标签处理器类,覆盖doTag方法;在WEB-INF目录下成立tld文件,叫做标签库的宣示文件;在jsp页面的脑袋使用taglib导入自定义标签库;在jsp中运用从定义标签

  {

7.2、自定义标签的生命周期

  time_t t;

SimpleTag接口

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

SetJspContext(JspContext  context)  传入PageContext对象

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

setParent(JspTag  tag)   传入父标签类对象

  }

setXXX(参数)  给属性赋值

  输出结果吗:

setJspBody(JspFrament  jspBody)  传入标签体内容

  Time in seconds since 1/1/70: 1185329968

doTag()  执行标签

  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″);

  1. LR中错误代号为27796的一个化解办法

荒谬如下:

52.

1A:注册表不能够访问还是摹写导致的,可以还原注册表或卸载(清除注册表,可以利用工具)重新安装程序。
如启支LR自带的实例的劳务经常,出错了,提示:端口已经让外一个服务占,请问一下会免可知友好修改者顺序原来设定的端口啊?
2A:停止服务后,在先后的安装目录\WebTours下找到xitami.cfg文件修改portbase值,注意
默认的端口号是portbase+80,portbase值是1000;要将捧口号改化8088,就管portbase改吧8008,保存之后虽是了(8088=8008+80)。然后还开服务

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

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

负载测试是通过逐渐增加系统负荷,测试网性能的生成,并最后确定在满足性能指标的事态下,系统所能接受的最老负载量的测试,例如,访问一个页面的响应时间规定不越1秒,负载测试就是测试在响应时间吗1秒时,系统所能承受的极其可怜产出访问用户之数据。

压力测试通常是于胜负荷情况下来对系的稳定进行测试,更实用地觉察网稳定的隐患以及系在负载峰值的极下力量隐患等。

特性测试:指于自然之约规范下(指定的软件、硬件、网络环境等),确定系所能够接受的绝老负荷压力。

  1. 性能测试包含了什么测试(至少举出3栽)

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

  1. 简述性能测试的步骤

 

第一,分析产品布局,明确性能测试的求,包括并发、极限、配置与指标等地方的性要求,必要时基于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的中情况。

  1. 简述使用Loadrunner的步骤

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

 

  1. 啊时可初步施行性测试?

  功能测试通过;一般需开展性能测试的体系,都是用户量比较好、业务使用比较频繁、比较关键之功能模块。

  1. LoadRunner由哪部件组成?

 主要发生三组成部分组成:

 VuGen、Controller、Analysis

7.
你下LoadRunner的哪位部件来录制脚本?

   使用Virtual User Generator录制测试脚本

  1. LoadRunner的哪个部件可以效仿多用户并发下回放脚本?

  LoadRunner的Controller组件。

9.
哟是集合点?设置集合点有啊含义?Loadrunner中安集合点的函数是谁?

 
 以性测试过程被,需要效法大量用户以同等时刻,访问系统并而操作有一样任务,可以经部署集合点来贯彻,多个用户以拓展有操作;

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

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

  1. 哎呀是场面?场景的要害来哪?如何设置场景?

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

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

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

1.抉择场景被待的脚本 2.摘取为目标场景,还是指定的手工场景
3.装置用户数、设置有负载的配备 4.设置实行策略

  1. 请解释一下如何录制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,我们录制脚本之前,可以把系统的

  1. 胡而创参数?如何创造参数?
    参数:在环境变化时要常常脚论具有环境转变的力量,就待参数化(客户端发送至服务器端)
    1.规定要参数说话的多少 2.设定规则形式来取值

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

提到:很多构架用sessionid等艺术标识不同任务和多少,应用在历次运行时方法发送数据不完全相同,需要以的机制对录制的本子进行拍卖,这种体制叫做关联(服务端发送至客户端)

  1. 气象设置有哇几栽方式?

对象场景,手工场景

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

  2. 汝在哪设置自动关联选项?

个别地方可以装 :

1.设置允许录制时开展机动关联,可以于定义规则

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

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

web_reg_save_param()函数主要根据需要举行涉嫌的动态数据前面和后面的永恒字符串来甄别、提取动态数据,所以当做涉嫌时,需要寻找有动态数据的错误、右边界字符串。

  1. 卿当VUGen中何时选择关闭日志?何时选择规范以及扩充日志?
    Run-time,log,当调试脚本时,可以独自输出错误日志,当当情景找你管加载脚本时,日志自动变成非可用。
    Standard Log
    Option:选择规范日志时,就会于本子执行进程被,生成函数的正式日志并且输出信息,供调试用。大型载重测试场景不用启用这个选项。扩展日志包括警告和其余消息。大型载重测试并非启用该选项。用扩展日志选项,可以指定哪些附加信需要加到扩展日志中

  2. 君如何调节LoadRunner脚本?
    VuGen有少数只选项帮助调节Vuser脚本。Run Step by
    Step命令和断点(breakpoints)。Option对话框中之调节设置(Debug
    setting)项,可以规定以万象执行进程被执行轨迹范围。调试信息写于output窗口。可以为此
    lr_set_debug_messag函数在剧本中手工安装信息项目。如果我们仅想接及同一不怎么截脚本的调式信息。

  3. 汝当LR中如何编写自定义函数?请为起有而于以前进行的路蒙修的函数。
    在创造用户从定义函数前我们需要以及创DLL(external
    libary)。把库房在VuGen
    bin目录下。一旦加了储藏室,把自定义函数分配做一个参数。该函数应该负有一下格式:__declspec
    (dllexport) char* <function name>(char*, char*)。 Milan

  4. 哎是日益递增?你什么样来安装?
    Ramp
    up这个选项用于逐渐增多服务器的虚构用户数或负载量。设置一个初始值而且好以片个迭代之间设置一个值等待。设置Ramp
    up,请到‘Scenario Scheduling Options’。

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

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

  7. 一呼百应时间和吞吐量中的涉是什么?
    吞吐量图显示的凡杜撰用户每秒钟从服务器收到到的字节数。当与应时间比较常,可以发现就吞吐量的减退,响应时间啊回落,同样的,吞吐量的峰值和最要命应时间多以以出现。

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

  1. 什么是think
    time?think_time有啊用?
    思考时是实际用户在action之间等的日。例如:当一个用户从服务器收到到多少常常,用户可能得以响应之前等待几分钟回顾数据,这种推迟被名思考时。

  2. 正式日志与扩张日志的分别是呀?
    Standard Log
    Option:选择正式日志时,就会见在剧本执行过程遭到,生成函数的业内日志并且输出信息,供调试用。大型载重测试场景不用启用这个选项。扩展日志包括警告以及其它信息。大型载重测试并非启用该选项。用扩展日志选项,可以指定哪些附加信用加到扩展日志被

  3. 解说以下函数和她们之不同之处。
    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中它运行用于当前数据库

  4. 什么是吞吐量?
    单位时外网处理客户端的请求数。

30.
action与init、end除了迭代底分别还来另外也?

以init、end中不可知利用集合点、事务等, init、end只实行同样次于。

  1. 于啊地方设置HTTP页面filter?

在runtime_settings中download filter里面进行安装。

  1. pot mapping的规律是啊?

尽管代理服务器

  1. HTTP的过期有哇三栽?

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

  1. 哟是contentcheck?如何来用?

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

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

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

  1. network中之speed
    simulation是仿的哟带富?

学用户访问速度的带来富。

  1. 生成WEB性能图有啊含义?大概讲述即可。

好充分直观的顾,在负载下网的运行情况和各种资源的下状况,可以本着网的性瓶颈定位、性能调优等从至想要之相助作用。

  1. 一旦刷新controller里的脚本?

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

  1. 过程以及线程有什么分别?

线程有自己之大局数据。线程存在让经过面临,因此一个历程的全局变量由具有的线程共享。由于线程共享同样的系区域,操作系统分配受一个经过的资源对该过程的享有线程都是可用的,正而全局数据只是供应有线程使用相同。在Controller中将用驱动程序(如mdrv.exe、r3vuser.exe)运行vuser。如果照进程运行每个vuser,则对每个vuser实例,都用反复启动同驱动程序并将其加载到内存中。将一律驱动程序加载到内存中见面占有大量之RAM(随机存储器)及其它系统资源。这就算限制了好当无一凭借载生成器上运行的vuser数量。如果依线程运行每个vuser,Controller也各个50只vuser(默认情况下)仅启动驱动程序(如mdrv.exe)的一个实例。该驱动程序将启动几单vuser,每个vuser都以线程运行。这些线程vuser将合享父驱动进程的内存段。这即散了累再次加载驱动程序/进程的需,节省了大气内存空间,从而得以于一个负载生成器上运行更多的Vuser.

  1. 哪拿剧本和结果放到load
    generator的机械上?

以controller中,点击Results-Results settings,在里进行对应的装即可。

  1. 怎样设置才能够被集合点只对一半之用户生效?

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

  1. LRd的API分为几类

A:通用的API:,就是暨现实的协议无关,在其他协议的剧本里还能用底;

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

C:自定义的:这个界定就于常见了;比如至少发生Java Vuser API、lrapi、XML
API。还可以填补加WindowsAPI和从定义函数库。

  1. 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】:提取结果集中得生一样久记下

  1. 性能瓶颈分析方法?

同一场景 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以避免磁盘排序。

章转载自:https://www.cnblogs.com/Sunnychenjuan/p/3421322.html