【LoadRunner】loadrunner常见难点集中

LoadRunner常见难题
1.LLAND 脚本为空的化解方法:

1.去掉ie设置中的第二方扶助撤废掉

2.在系统品质-高级-质量-数据举办爱惜中,添加loadrunner安装目录中的vugen.exe文件.

有大概是出于录像的UCRUISERL地址接纳的是localhost的题材,改成分配的IP地址或127.0.0.1试行。

三 、插入文本检查点步骤时,使用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界面为空的消除的大概方法:

壹 、要是设置了IE以外的浏览器,并且IE不是暗中认可浏览器,则不也许生成摄像脚本

二 、假设录像脚本时IE不能开拓,则需求将浏览器的IE工具高级选项中,将“启用第贰方浏览器扩张”的

勾选去掉

叁 、lr自带的webtours系统,假设点击Flights选项,出现空白页面,请检查本机oracle的
PE奇骏L5LIB环境

2.LoadRunner摄像脚本时怎么不弹出IE浏览器?

  当一台主机上设置多少个浏览器时,LoadRunner摄像脚本日常境遇不能够开拓浏览器的景况,可以用下边包车型客车措施来解决。

  运维浏览器,打开Internet选项对话框,切换来高档标签,去掉“启用第2方浏览器扩大(须求重运行)”的勾选,然后再一次运营VuGen即可缓解难点

  提示:常常设置Firefox等浏览器后,都会勾选下面得选取,导致不能够平常摄像。因而建议运维LoadRunner得主机上保持1个根本的测试环境。

3.HTML-based script与ULX570L-based
script的脚本有啥分别?

应用“HTML-based
script”的情势录像脚本,VuGen为用户的各样HTML操作生成单身的手续,那种本子看上去相比较直观;

选择“URubiconL-based
script”格局录像脚本时,VuGen能够捕获全部作为用户操作结果而发送到服务器的HTTP请求,然后为用户的种种请求分别生成对应措施。

  常常,基于浏览器的Web应用会选取“HTML-based
script”方式来录像脚本;而没有依照浏览器的Web应用、Web应用中带有了与服务器举行交互的Java
Applet、基于浏览器的利用中含有了向服务器实行通讯的JavaScript/VBScript代码、基于浏览器的选用中采纳了HTTPS安全磋商,那时使用“U奥迪Q3L-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)函数,调用参数为2个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时,假诺进展回看则只可以成功迭代2次。为啥从第壹次迭代初始发生错误?

  那种光景多是出于在“Run-time Setting”的“Browse
Emulation”的设置中,勾选了“Simulate a new user on each
iteration”及其上面包车型大巴选项“Clear cache on each
iteration”那三个选择的意思是历次迭代时模拟叁个新的用户及每一趟迭代时去掉缓存。

  由于剧本迭代时,init和end只好执行一遍,借使每一遍迭代都萧规曹随3个新的用户并免去缓存,则用户登录新闻将一并消除,由此迭代时可能会发生错误。

  10.虚拟客户脚本“Run-time
Setting”中的线程和经过运市场价格势的差别?

  若是选取“Run Vuser as a
process”,则场景运维时会为每3个虚拟用户创制三个历程;选用“Run Vuser as a
thread”则将各样虚拟用户作为3个线程来运营,在职分管理器中只看到多个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选项,选项后再重放就马到成功了。

先是LENCORE是因此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()中实际上涵盖了13个对Server
端的乞求,那么些函数是对准11个请求的总额时间的!(别犯低级错误,timeout分了connect,receive以及download多少个部分:)
) 第2:便是自家表明的方面包车型大巴有个别BUG难题!WinInet
dll在新本子中拍卖请求时方可异步的,正是不再是那种连接等待接下来超时方式!然则L福特Explorer用的socket是共同请求!唯有等到timeout才会退出!microsoft已经名扬四海表示INTE冠道NET_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.足以在LCRUISER测试脚本的目录中找到参数文件,间接改动参数文件

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里的OPAJEROD应该怎么样设置?

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.在气象设置中不忽视思考时间,不过在查阅响应时间的时候什么让LSportage自动在响应时间里减去思辨时间?

在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.测试奇骏TMP协议应该在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)勾选QTP的Tools–Options–Run的”Alow other Mercury products to run
tests and components”

2)录像需求在lr中运行的QTP脚本,并且在QTP脚本中设置工作,Services.StartTransaction
“start”与瑟维斯s.EndTransaction “start”

2、运行QTP脚本

在L揽胜极光中运维时精选QTP脚本,为QTP脚本存放目录下文件扩张名为.usr的文本。

 注:L卡宴中运营QTP脚本时,只好有二个Vuser,不然将报错:

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

28.在L悍马H第22中学怎么着忽略Socket接收数据的表明

在L福特Explorer中对Socket进行质量测试时,L大切诺基会自个儿看清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时出错内部存款和储蓄器地方访问无效

Office二〇〇五的难题,IE加载项禁用Groove GFSBrowser Helper 组件

32.L瑞鹰自带的例证端口号怎么修改?

L奥德赛自带的例证端口号是1080,作者何以把那个端口设置自身要好想用的端口号8088,在什么样地点设置在L中华V安装目录下,找到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这一个项目,在L福睿斯中怎么表示”。作者将一段C的代码放在L奥迪Q5中,L瑞鹰不认int64这一个类型,怎么消除?

把那段C代码做成DLL,然后在L大切诺基中调用

37.LoadRunner监理长途机器Windows财富,提醒“net use
failed”

消除办法:

在被监控机器上改动本地帐户的共享和安全情势为经典情势。控制面板->管理工具->本地安全策略->网络访问:本地帐户的共享和莱芜格局->经典方式。

蹲点连接前的备选干活:

第三保险被监视的windows系统开启以下1个劳务Remote Procedure Call(HavalPC)
和Remote Registry Service

被监视的WINDOWS机器:右击作者的总计机,选拔管理->共享文件夹->共享
在那其间要有C$这几个共享文件夹,(若是没有协调手动加)

下一场保险在安装LLAND的机器上选拔运维.输入\\被监视机器IP\C$
然后输入管理员帐号和密码,如若能观望被监视机器的C盘了,就印证您获取了那台机器的协会者权限,能够运用L本田UR-V去老是了

  38.LoadRunner脚本中冒出乱码难题现象有些链接只怕图片名称为汉语乱码,脚本运营不或者透过。

  错误分析   脚本摄像恐怕应用的是U奇骏L-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 U福特ExplorerL=http://172.18.20.70:7001/workflow/bjtel/leasedline/
querystat/ subOrderQuery.do

  错误分析:那种错误常常是因为并发压力过大,服务器端太费劲,不恐怕及时响应客户端的伸手而招致的,所以这一个错误是正常现象,是压力过大导致的。

  假诺压力极小就应运而生那个难点,大概是本子某些地点有错误,要仔细查阅脚本,提醒的错误信息会一定有个别具体难点发出的岗位。

  消除办法:例如地点的错误现象难题一定在有个别U奥迪Q7L上,要求再行运维一下光景,同时在别的机器上访问此UEvoqueL。若是不能够访问或时间过长,只怕是服务器也许此选取不可能支撑那样之大的载重。分析一下服务器,最好对其性质实行优化。

比方重国民党的新生活运动行情状后还有过期现象,就要在各个图片中分析一下原因,例如能够查看是还是不是服务器、DNS、网络等方面存在难点。

 

  最终,扩张一下运营时的过期设置,在“Run-Time Settings”>“Internet
Protocol:Preferences”中,单击“options”,增添“HTTP-request connect
timeout” 可能“HTTP-request receive”的值。

  41.LoadRunner脚本中出现乱码:在摄像Web合计脚本时出现中文乱码,在重播脚本时会使回看甘休在乱码地方,脚本不可能运转。

  错误现象:有些链接也许图片名称为华语乱码,脚本运营不能通过。

  错误分析:脚本摄像只怕行使的是UENCOREL-based
script格局,如若程序定义的字符集合选择的是国际标准,脚本就会油然则生乱码现象。

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

  42.LoadRunner
HTTP服务器状态代码:在录像Web协和脚本重放脚本的长河中,会面世HTTP服务器状态代码,例如常见的页面-404不当提醒、-500不当提示。

  错误现象1:-404 Not
Found服务器并未找到与请求U陆风X8I相符的财富,但仍是能够三番五次运转直到甘休。

  错误分析:此处与请求U奇骏I相符的能源在摄像脚本时早已被提交过3次,回看时不得再重复提交同样的财富,而须要转移提交能源的始末,每一趟回看一遍脚本都要改变提交的数量,有限支撑模拟实际条件,造成一定的载重压力。

化解办法:在出现错误的岗位展开脚本关联,在要求时插入相应的函数。

 

  错误现象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中看不到此组件的相干U大切诺基L。

荒唐分析:所选择的录像脚本方式不正确,平日状态下,基于浏览器的Web应用会动用“HTML-based
script”方式来录像脚本;而并未基于浏览器的Web应用、Web应用中富含了与服务器进行交互的Java
Applet、基于浏览器的选用中涵盖了向服务器进行通讯的JavaScript/VBScript代码、基于浏览器的使用中使用HTTPS安全磋商,那时则动用“UCR-VL-based
script”格局实行录制。

  化解办法:打开录制选项配置对话框实行安装,在“Recording
Options”的“Internet Protocol”选项里的“Recording”中精选“Recording
Level”为“HTML-based script”,单击“HTML Advanced”,接纳“Script. Type”为“A
script. containing explicit”。然后再采用选用“U汉兰达L-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” ?>,所以才会有此错误提醒。

化解办法:下载七个补丁,分别为“LPAJERO80WebServicesFPI_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 二零一三-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连接数唯有1五个(xp),所以大家在模拟虚拟七个用户时,就会遇见tcp的接二连三限制,从而报错。修改的法子:windows下运作帕特ch.exe
输入C,再输入你要的TCP/IP连接数字(一般为500~三千)回车确认输入Y
回车确认。倒计时15秒后完工。接着再运维下帕特ch.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. LKoleos中错误代号为27796的一个化解措施

荒唐如下:

52.

1A:注册表不能访问或写导致的,能够复苏注册表或卸载(清除注册表,能够使用工具)重新安装程序。
要启支LTucson自带的实例的服务时,出错了,提醒:端口已经被另3个劳务占用,请问一下能否自身修改那个顺序原来设定的端口啊?
2A:停止服务之后,在程序的装置目录\Web图尔斯下找到xitami.cfg文件修改portbase值,注意
默许的端口号是portbase+80,portbase值是一千;要把端口号改成8088,就把portbase改为8008,保存之后正是了(8088=8008+80)。然后重启服务

二:LoadRunner面试(笔试)难点整治

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

负载测试是因此逐级增多系统负荷,测试系统天性的成形,并最终明显在满意质量目标的意况下,系统所能承受的最大负载量的测试,例如,访问1个页面包车型大巴响应时间鲜明不超越1秒,负载测试便是测试在响应时间为1秒时,系统所能承受的最大产出国访问问用户的数据。

压力测试平时是在高负荷情状下来对系统的安居举行测试,更实用地意识系统稳定的隐患和系统在负载峰值的尺度下效果隐患等。

质量测试:指在一定的牢笼原则下(钦点的软件、硬件、网络环境等),鲜明系统所能承受的最大负荷压力。

  1. 属性测试包涵了怎么着测试(至少举出3种)

 质量测试包罗负载测试、压力测试、大数据量测试、疲劳强度测试等。

  1. 简述品质测试的手续

 

第②,分析产品布局,鲜明质量测试的急需,包括并发、极限、配置和指标等方面包车型大巴质量须求,供给时基于LOAD测试的同一测略需同时考虑安定测试的供给。
  第壹,分析利用场景和用户数据,细分用户作为和相关的数据流,显著测试点或测试接口,列示系统接口的也许瓶颈,一般是先主干接口再支线接口,并形成起来的测试用例设计。
  第贰,依照品质测试供给和规定的测试点进行测试组网设计,并领会分化组网方案的要紧程度或先期级作为接纳评估的依照,须求时在早期产品设计中建议援助质量测试的可测试性设计方案和对测试工具的需求。
  第4,达成质量测试用例设计、分类选拔和依据用户作为分析规划测试规程,并预备好测试用例将应用的测试数据。
第4,分明选取的测试工具。
第⑥,进行初验测试,以主干接口的可用性为主,依照测试结果分析质量瓶颈,通过迭代保管主题的目标等测试的条件。
第⑦,迭代实行全面包车型地铁质量测试,达成安排中的品质测试用例的实践。
第⑦,完毕品质测试评估报告。
  在进行品质测试的时候,大家供给掌握有个别卓有成效的品质目标,上边我们来列出部分重点的质量指标:
  一是,通用目的(指Web应用服务器、数据库服务器必需测试项):
*Processor提姆e:指服务器CPU占用率,一般平均达到规定的标准百分之七十时,服务就像饱和;
*Memory Available
Mbyte:可用内部存款和储蓄器数,假如测试时意识内具备变化境况也要专注,借使是内部存款和储蓄器走漏则相比较严重;
*Physicsdisk Time :物理磁盘读写时间意况。
二是,Web服务器目标:
*Avg 昂科拉ps:平均每分钟响应次数=总请求时间/秒数;
*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的步调

  Cross:制定品质测试安插—>开发测试脚本—>设计测试场景—>执行测试场景—>监察和控制测试场景—>分析测试结果

 

  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脚本?

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

分解:1.依据浏览器的应用程序推荐应用HTML-based Script, 脚本中应用
HTML页面包车型地铁花样来代表,那种措施的Script脚本不难保障,简单通晓,使用该选项中的advance中的第3个挑选,假设单单的HTML格局,是不容许使用关联的。
2.不是依照浏览器的应用程序推荐使用U揽胜L-based
Script,脚本中的表示选拔基于ULacrosseL 的不二法门,不是很好读书。
解释:1.是还是不是记录录像进程中的ThinkTime,如果记录,还足以设置最大值,一般本人不记录这几个值。
2.通报Vugen去重新设置每种action之间的Http context,缺省是内需的。
3.整机记录摄像进度的log,
4.封存3个地面的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. 你在LRubicon中如何编写自定义函数?请给出一些你在在此在此以前进行的品类中编辑的函数。
    在创建用户自定义函数前大家须求和创办DLL(external
    libary)。把库位于VuGen
    bin目录下。一旦加了库,把自定义函数分配做叁个参数。该函数应该负有一下格式:__declspec
    (dllexport) char* <function name>(char*, char*)。 Milan

  4. 何以是慢慢递增?你怎么来安装?
    Ramp
    up这么些选项用于慢慢增多服务器的虚拟用户数或负载量。设置多个早先值而且能够在五个迭代之间设置3个值等待。设置Ramp
    up,请到‘Scenario Scheduling Options’。

  5. 以线程方式运营的虚拟用户有何样优点?
    VuGen提供了用二十二十四线程的便利。那使得在种种生成器上能够跑越多的虚构用户。如若是以进度的不二法门跑虚拟用户,为各种用户加载相同的驱动程序到内部存款和储蓄器中,因而占有了多量的内部存款和储蓄器。那就限制了在单个生成器上能跑的虚拟用户数。假使按线程运转,给定的兼具虚拟用户数(比如100)只是加载3个驱动程序实例到内存里。各样线程共用父驱动程序的内部存款和储蓄器,因而在每种生成器上得以跑越多的杜撰用户。

  6. 当你必要在失误时停下实施脚本,你如何做?
    lr_abort函数放弃虚拟用户脚本的履行。表明虚拟用户甘休Action的执行,直接实施vuser_end然后停止执行。在产出谬误景况下想手工业扬弃脚本的推行,那几个函数是实惠的。用这几个函数结束脚本时,Vuser被内定为“Stopped”状态。为了那么些函数起效果,早先时候就不可能选拔Run-Time
    Settings中的孔蒂nue on error选项。

  7. 一呼百应时间和吞吐量之间的关联是如何?
    吞吐量图呈现的是虚拟用户每分钟从服务器收到到的字节数。当和响应时间相比时,能够发现随着吞吐量的回落,响应时间也下滑,同样的,吞吐量的峰值和最大响应时间大多在同时出现。

25.
验证一下什么样在LCRUISER中配置连串计数器?
通过Web财富监视器,利用那个监察和控制器能够分析web服务器的吞吐量、点击率、每秒http响应数以及每秒下载的页面数。

  1. 什么是think
    time?think_time有何样用?
    思考时间是真性用户在action之间等待的时日。例如:当2个用户从服务器收到到多少时,用户恐怕供给在响应在此以前等待几秒钟回顾数据,那种推迟被号称思考时间。

  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个符合要求的应用程序和规则,设定需求寻找的公文和前缀后缀即可使用。

  1. network中的speed
    simulation是效仿的哪些带宽?

照猫画虎用户访问速度的带宽。

  1. 生成WEB质量图有如何含义?大约讲述即可。

能够很直观的看到,在负载下系统的运作景况以及种种能源的选拔处境,能够对系统的天性瓶颈定位、品质调优等起到想要的帮扶功用。

  1. 假使刷新controller里的本子?

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

  1. 进程和线程有何分别?

线程有协调的大局数据。线程存在于经过中,因而三个进度的全局变量由全部的线程共享。由于线程共享同样的系统区域,操作系统一分配配给1个经过的能源对该进度的具有线程都以可用的,正如全局数据可供全数线程使用同样。在Controller大校使用驱动程序(如mdrv.exe、r3vuser.exe)运维vuser。要是按进程运营各个vuser,则对此各类vuser实例,都将反复运营同一驱动程序并将其加载到内部存款和储蓄器中。将同样驱动程序加载到内部存款和储蓄器中会占用多量的RAM(随机存款和储蓄器)及其他系统财富。这就限制了能够在任一负载生成器上运营的vuser数量。假若按线程运转每一个vuser,Controller为每肆17个vuser(暗许情形下)仅运转驱动程序(如mdrv.exe)的一个实例。该驱动程序将起动多少个vuser,每一个vuser都按线程运营。这么些线程vuser将共享父驱动进程的内存段。那就免去了反复重复加载驱动程序/进度的需求,节省了大气内部存款和储蓄器空间,从而能够在2个负载生成器上运维更加多的Vuser.

  1. 如何把剧本和结果放到load
    generator的机械上?

在controller中,点击Results-Results settings,在内部进行相应的设置即可。

  1. 怎么样设置才能让集合点只对十分之五的用户生效?

对集合点策略进行对应的安装即可。即在controller中,点击Scenario-Rendezvous-policy进行相应的装置即可,由于标题中“二分一的用户”没有认证白具体指什么的用户,未来不好鲜明具体对中间的哪位选项实行设置。

  1. LQX56d的API分为几类

A:通用的API:,便是跟现实的商议毫无干系,在其它协议的剧本里都能用的;

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

C:自定义的:那些限制就比较广了;比如至少有Java Vuser API、lrapi、XML
API。还是能添加WindowsAPI和自定义函数库。

  1. L中华V二种日志函数的界别?

【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。通过安装音信级别,能够鲜明发送哪些新闻。运维设置的方法是将L昂Cora_SWITCH_ON作为on_off传递,禁止使用设置的办法是传递LEnclave_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、数据库的连接
(壹 、在应用服务的品质参数大概太小了
② 、数据库运维的最厦门接数(跟硬件的内部存款和储蓄器有关)) 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%至七成。 2
Windows财富监察中,若是System\Processor Queue
Length大于2,而电脑利用率(Processor
提姆e)一贯极低,则存在着总括机阻塞。 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 提姆e和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),该值越高越好。假设持续低于八成,应考虑扩充内部存款和储蓄器。 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$s瓦斯tat where name=’free memory’; 2
若是数额的缓存命中率小于0.90,那么供给加大DB_BLOCK_BUFFE途锐S参数的值(单位:块)。
缓冲区高速缓存命中率: 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_BUFFEOdyssey参数的值。
日志缓冲区的申请情形: select name,value from v$sysstat where name =
‘redo log space requests’ ; 4
假若内存排序命中率小于0.95,则应加大SO揽胜T_AREA_SIZE以幸免磁盘排序。

小说转发自:https://www.cnblogs.com/Sunnychenjuan/p/3421322.html