最近在学习Loadrunner,发现一个英文网站http://www.wilsonmar.com/1loadrun.htm里面介绍的比较全面,这里把英文内容简单翻译下,一是加深本身的理解,另外也帮助不喜欢看英文的朋友学习下这些文章.由于是边看就直接翻译了,可能有不通顺或者翻译不许确的地方,但愿你们能提出,谢谢.php
一:Loadrunner结构概述html
Loadrunner经过使用虚拟用户代替真实用户操做客户端软件来工做的,例如使用IE对IIS或者Apache Web服务器发送HTTP请求.ios
多个虚拟用户客户端的请求是有负载生成器(Load Generator)产生的,目的是对不一样类型的被测服务器产生负载.数据库
这些负载生成器代理(load generator agent )是由Mercury's的控制器(Controller)来控制启动或中止的.安全
控制器根据由编译的脚本引发的场景(Scenarios)和相关的运行时设置(Run-time Settings)来控制负载测试的运行.服务器
这些脚本是由虚拟用户脚本生成器(Virtual user scrīpt Generator)也叫VUGen生成的.它是经过截获网络应用程序的客户端和服务器之间的网络通讯包而产生的C语言脚本,这些脚本能够被虚拟用户执行.网络
对于Java客户端,VuGen经过客户端的JVM的钩子技术来捕获请求.架构
在运行时,每一个机器的状态由控制器监控.ide
运行结束后,控制器把监视日志和右负载生成器产生的日志结合起来给分析器(Analysis)使用.分析器可以把这些日志生成结果报表和Microsoft Word格式的图表,水晶报表或HTML格式页.函数
每个由分析器生成的HTML报表页包括一个到结果的超连接,这些结果文件能够用Microsoft Excel打开来进行其余的分析.
运行时产生的错误都被存储在一个数据库中,该数据库能够用Microsoft Access打开.
虚拟用户:
不象WINRUNNER那样只能模拟一个客户端用户,LOADRUNNER可以模拟成千上万的虚拟用户.
负载生成器由VnGen脚本控制.这些脚本是使用跟被测客户端同样的协议产生的非GUI的API函数.可是WINRUNNER是使用GUI用户来模拟被测客户端的键盘输入,鼠标点击和其余用户接口的操做,并且只能运行一个GUI用户.而LOADRUNNER终端服务管理器(LoadRunner Terminal Services Manager)管理使用终端服务代理来管理远程机器而且能登录到客户端终端服务的会话.
运行的时候,线程类型的虚拟用户共享一个公用的内存池.因此线程方式能够使每一个负载生成器支持更多的虚拟用户.
全部负载生成器上的虚拟用户的状态是从"Running"开始的,而后在运行完脚本的init部分后变为"Ready".虚拟用户的"Finished"有经过或者失败的结束状态.当负载生成器负载太重时虚拟用户自动的"Stopped".
监控标准的Web(HTTP)服务器(Apache, IIS, and Netscape)不须要额外的license.
为了可以监控使用SOAP和XML的Web Services,须要一个独立的 license,而且虚拟用户须要Web Services插件.该插件被Feature Pack(FP1)安装.
产品版本:略
应用程序组件需求
应用程序 |
程序进程名称 |
V9 |
V8.0 Img KB |
File Size |
 |
- |
LRLauncherApp.exe |
15,840 |
16,288 |
n/a |
 |
Virtual User Generator |
VuGen.exe |
23,980 |
12,436 |
2,334,769 |
 |
Controller with On-Line Monitors |
wlrun.exe |
61,312 |
13,076 |
5,681,215 |
 |
Load Generator Agent |
magentproc.exe |
3,336 |
3,236 |
|
magentservice.exe |
3,496 |
|
65,536 |
mdrv.exe |
- |
|
|
 |
Analysis |
Analysisui.exe |
64,460 |
13,132 |
6,058,496 |
 |
Tuning Console |
protune.exe |
- |
|
3,403,833 |
控制台程序:
perl5.8.0.exe |
Interpreter |
20,535 |
regtlb.exe |
registers the batch automation type library |
30,720 |
sed.exe |
GNU sed (gsed) version 2.05 |
55,296 |
wdiff.exe |
Compares text files |
197,632 |
使用WINDOWS远程桌面链接
为了使WINDOWS远程桌面链接会话在测试时不会超时,每一个机器的终端服务应该以下配置:
1.开始-->程序(或者控制面板),管理工具下选择终端服务配置.
2.打开树型的链接文件夹
3.右击RDP-Tcp,选择属性.
4,点会话标签页.
5,确保选中"Override user settings"
6.设置空闲会话限制为最大2天来代替默认的2个小时.
7,点应用.
8.OK
注意:确保上面的作法没有影响到公司的安全策略.
注意:终端用户只能容许两个活动的链接.断开会话的时候使用开始-->退出,而不要点远程桌面的"X"关闭.
LR的安装和配置:略
应用程序文件的位置:(省略部分介绍)
能够使用环境变量来快速得到LR的安装路径,如环境变量为"LR81",你能够使用
cd %lr81%
WINDOWS文件夹下的文件:
1.路径存储在wlrun.ini文件中的[ProductEnv]下做为M_ROOT.该文件在C:\WINNT (或 C:\Windows)
2.C:\WINNT (或 C:\Windows)下一样存有安装时的Maintenance Number (MPN),存在mercury.ini文件中.
其余省略.
好了,今天先翻译到这里了,该吃中午餐了,哈哈,下期会翻译LOADRUNNER的内部结构.