热爱测试,主要研究性能测试和自动化测试方面的技术,希望与同样对测试有热情的你一同进步成长

Loadrunner系列学习--Loadrunner架构(1)

上一篇 / 下一篇  2007-12-11 12:15:24 / 个人分类:性能测试

51Testing软件测试网mKJGI xt

k/N|f*@r&A_-v051Testing软件测试网L1~g6KO8A

    最近在学习Loadrunner,发现一个英文网站http://www.wilsonmar.com/1loadrun.htm里面介绍的比较全面,这里把英文内容简单翻译下,一是加深自己的理解,另外也帮助不喜欢看英文的朋友学习下这些文章.因为是边看就直接翻译了,可能有不通顺或者翻译不准确的地方,希望大家能提出,谢谢.51Testing软件测试网"cX6a8I?e#b

51Testing软件测试网aVm#ev} j

  一:Loadrunner结构概述

2H.f7]H-x!J L(l}0

&y{.]5^t#{#o3N2DO0    Loadrunner通过使用虚拟用户代替真实用户操作客户端软件来工作的,例如使用IE对IIS或者Apache Web服务器发送HTTP请求.51Testing软件测试网1_wS(Li ?2a.D

Vr6In1d4J_O+|0    多个虚拟用户客户端的请求是有负载生成器(Load Generator)产生的,目的是对不同类型的被测服务器产生负载.51Testing软件测试网 ]l5iVOt7R;G

/Ya"p&j,T1v0    这些负载生成器代理(load generator agent )是由Mercury's的控制器(Controller)来控制启动或停止的.

{"fiW~ Q051Testing软件测试网5fM D"] vB0D Q:R

   控制器根据由编译的脚本引起的场景(Scenarios)和相关的运行时设置(Run-time Settings)来控制负载测试的运行.51Testing软件测试网a\9R+w{k

9r2UL;}~$F]s"X0   这些脚本是由虚拟用户脚本生成器(Virtual user scrīpt Generator)也叫VUGen生成的.它是通过截获网络应用程序的客户端和服务器之间的网络通信包而产生的C语言脚本,这些脚本可以被虚拟用户执行.

+T9@X)w!gm(T:c0

h$EDis#Br2X0   对于Java客户端,VuGen通过客户端的JVM的钩子技术来捕获请求.

:}!Xo(c7d6m7e%G0

] q"jP wi*w0   在运行时,每个机器的状态由控制器监控.

'w6l|4G rd0

-Tm0N F|(?Lyi8e3p1A0   运行结束后,控制器把监视日志和右负载生成器产生的日志结合起来给分析器(Analysis)使用.分析器能够把这些日志生成结果报表和Microsoft Word格式的图表,水晶报表或HTML格式页.

CL:I"d9atrH051Testing软件测试网7Yx$D5K"v.N

   每一个由分析器生成的HTML报表页包括一个到结果的超链接,这些结果文件可以用Microsoft Excel打开来进行其他的分析.

.e+w"~(^&yv.n051Testing软件测试网3z v|,F3d%d

   运行时产生的错误都被存储在一个数据库中,该数据库可以用Microsoft Access打开.

r,p{sK051Testing软件测试网6YFY-l l3K\

虚拟用户:51Testing软件测试网!L:]qO+} }6j

51Testing软件测试网9]F Q n2Cao+N

   不象WINRUNNER那样只能模拟一个客户端用户,LOADRUNNER能够模拟成千上万的虚拟用户.51Testing软件测试网Zu];Sos M |0}

0GX+VZ3sSc0   负载生成器由VnGen脚本控制.这些脚本是使用跟被测客户端一样的协议产生的非GUI的API函数.但是WINRUNNER是使用GUI用户来模拟被测客户端的键盘输入,鼠标点击和其他用户接口的操作,而且只能运行一个GUI用户.而LOADRUNNER终端服务管理器(LoadRunner Terminal Services Manager)管理使用终端服务代理来管理远程机器并且能登陆到客户端终端服务的会话.51Testing软件测试网/X] d+P7A6YS!c[

51Testing软件测试网(I0De6|8[` ^p

    运行的时候,线程类型的虚拟用户共享一个公用的内存池.所以线程方式可以使每个负载生成器支持更多的虚拟用户.

"@c uB^0

5sCT7gK0    所有负载生成器上的虚拟用户的状态是从"Running"开始的,然后在运行完脚本的init部分后变为"Ready".虚拟用户的"Finished"有通过或者失败的结束状态.当负载生成器负载过重时虚拟用户自动的"Stopped".51Testing软件测试网_O/p V9ghGM7V

z/Q I2pJ0    监控标准的Web(HTTP)服务器(Apache, IIS, and Netscape)不需要额外的license.51Testing软件测试网.n0^`};k&@x/Qo

51Testing软件测试网T?d*bfE3D)H

    为了能够监控使用SOAP和XML的Web Services,需要一个独立的 license,并且虚拟用户需要Web Services插件.该插件被Feature Pack(FP1)安装.

*G P;ob1l@051Testing软件测试网Z G2ap$G j

产品版本:略51Testing软件测试网H;S4H+AO4M.^

-l7z0N'vQ%_\0应用程序组件需求

5x~/`6s8h'E\xw0

tM5?l]KtTM0}!Ah'y0

应用程序 程序进程名称 V9V8.0
,a,}t0ASgwL0Img51Testing软件测试网~ C2ZvIu
KB
File51Testing软件测试网4n-hR8[Z'@] jE-uq
Size
-LRLauncherApp.exe15,84016,288n/a
Virtual User Generatoron this pageVuGen.exe23,98012,4362,334,769
Controlleron this pagewith On-Line Monitorswlrun.exe61,31213,0765,681,215
Load Generator Agenton this pagemagentproc.exe3,3363,236 
magentservice.exe3,496 65,536
mdrv.exe-  
Analysison this pageAnalysisui.exe64,46013,1326,058,496
Tuning Consoleon this pageprotune.exe- 3,403,833

Y8XwJ'Jy sv0

9^v p\.vPg-``e0控制台程序:51Testing软件测试网;{ A4Y-FYE_

e9au)]%g%])o0

perl5.8.0.exeInterpreter20,535
regtlb.exeregisters the batch automation type library30,720
sed.exeGNU sed (gsed) version 2.0555,296
wdiff.exeCompares text files197,632
51Testing软件测试网[] G2F-\'sNW!\c

CM4N6Y+y0使用WINDOWS远程桌面连接

o1m6I*D[9?C8f0

9R.QX#}G)|] Uw0  为了使WINDOWS远程桌面连接会话在测试时不会超时,每个机器的终端服务应该如下配置:

0\-T ~3`5?c051Testing软件测试网d7pepmW*yZ

1.开始-->程序(或者控制面板),管理工具下选择终端服务配置.

t)I jMg7g0

-X NP_U,Xy5s(W02.打开树型的连接文件夹51Testing软件测试网:d.{w0k}

(kF'U&Aj;Z^6H03.右击RDP-Tcp,选择属性.

uAQe&N*W%QqP0

Y+dk_u$eNg04,点会话标签页.

4K8UMq[)f0E t Bq0

2F c pcsZ05,确保选中"Override user settings"

Ou}(P3I@8A p0

4A(N{9\js1J06.设置空闲会话限制为最大2天来代替默认的2个小时.51Testing软件测试网Sc8DE5Y8M8`OW

5^N!Gc Z9u07,点应用.51Testing软件测试网iEx T e/_

kQ3h7^ hW M'W k08.OK

c7ht3}z VP!u051Testing软件测试网1^&NHRIh c

注意:确保上面的做法没有影响到公司的安全策略.

)~0o0\(jA051Testing软件测试网 \&xNW RQ

注意:终端用户只能允许两个活动的连接.断开会话的时候使用开始-->退出,而不要点远程桌面的"X"关闭.51Testing软件测试网mR^w:C)X)Lr!j Q

51Testing软件测试网xXdYcr-D

LR的安装和配置:略

w| i$C'E3_Y051Testing软件测试网1] m'\ \u

应用程序文件的位置:(省略部分介绍)

}c#R5tu~/{(t051Testing软件测试网-ZgV:[YUi

可以使用环境变量来快速获得LR的安装路径,如环境变量为"LR81",你可以使用51Testing软件测试网1^r@D!@vL%tFX

hY#Yw g$O7M0cd %lr81%51Testing软件测试网 ~1O(hAV3Xs

51Testing软件测试网MF |e+o&N+e:YK0m^

WINDOWS文件夹下的文件:

V:T/LHoZ051Testing软件测试网1p%\%aXH7a$u8? b

1.路径存储在wlrun.ini文件中的[ProductEnv]下作为M_ROOT.该文件在C:\WINNT (或 C:\Windows)

:i1X^%y3A0hJlmF0

SMhR"}^$^02.C:\WINNT (或 C:\Windows)下同样存有安装时的Maintenance Number (MPN),存在mercury.ini文件中.51Testing软件测试网7s-F`'H+p Lu

51Testing软件测试网%f8nJ-^!Q

其他省略.

ap5GnL*` X0

+grA2i-|J.S7S;|0好了,今天先翻译到这里了,该吃中午饭了,哈哈,下期会翻译LOADRUNNER的内部结构.

c:u-VA#nv5S*_u051Testing软件测试网^\3MVmy

 51Testing软件测试网/Yt:O;P%w

51Testing软件测试网/|k'Z.lb.z/Zd


0f9^2CSH?0 

i*E2_`#N$hx051Testing软件测试网1Fp!R~2K

 

~~K[ j}W051Testing软件测试网p-~`7h8@$z,[

 51Testing软件测试网*mk`D_1G|6O9n m[[

zYM*ey,d(j0 51Testing软件测试网l@x!["MG%`&K


TAG: 性能测试

ericzhou2009的个人空间 引用 删除 ericzhou2009   /   2010-10-14 15:50:09
zibeike的个人空间 引用 删除 zibeike   /   2008-09-05 21:17:33
原文的名称是LoadRunner Architecture,运行原理这篇文章并没有讲多少
testing 引用 删除 sunqiang1024   /   2008-09-03 22:04:06
这个看起来好像不是架构,而是LR的运行原理
 

评分:0

我来说两句

Open Toolbar