Loadrunner系统知识(非常好)
LoadRunner内部结构
1, 被测系统是由驱动进程mdrv.exe(多线程驱动的进程)和r3vuser.exe来产生压力的,其中r3vuser.exe仿真应用程序的客户端,如IE浏览器。它执行了三个主要的操作:
Kli> cpp (C 语言pre-processor)
1)cci (C语言编译器),建立ci文件,然后使用被测系统的协议相关的驱动来执行。
通过在Windows批处理脚本中启动Mdrv.exe来默默地启动运行。
Mdrv能自动停止加载Vuser,因为他们与Vuser和Windows负载生成器上的CPU使用监视器之间互相通信。
在Windows机器上,对于每一个基于Java的Vuser都有一个独立的JVM。 2, 虚拟用户通过在负载生成器客户端机器上使用agent(3900
magentproc.exe)作为服务或者进程来按照组(在指定的负载生成器上运行相同脚本的虚拟用户的集合)启动虚拟用户。
3, 每一个拥有代理的机器维护一个在.qtp文件中的执行日志。
4, 当日志被启用后,代理同样会在结果文件中为每一个虚拟用户(由虚拟
用户组分开)建立一系列日志文件。
5, 在执行过程中,这些文件可以通过在Controller机器上的view >
Show Output窗口中显示。
6, 在预先设置延时上,Controller上运行的Scheduler指导代理(通过
Windows 54345端口,或者Unix上的动态端口)去初始化场景会话.Controller(wlrun.exe)在请求中发送一份场景的拷贝.
7, 代理是由每一个负载生成器上的Remote Agent Dispatcher进程(以
前叫Remote Command Launcher(RCL))启动的.
8, 每一个根据场景(.lrs)定义文件中设置的代理来决定哪一个虚拟用户组
和脚本需要在主机上运行.
## 这就是说Controller可以从DOS的批处理文件(.batch)中启动. REM Start Controller:
SET M_ROOT=C:\\Program Files\\Mercury Interactive\\LoadRunner\\bin cd %M_ROOT%
wlrun.exe -TestPath D:\\Dev\\Dev1.lrs -port 8080 -Run -DontClose ? 包含的-Run 参数与手动的点”开始场景”自动运行是一样的. 这不是一个很好的方法,因为你可能需要决定从以前的运行中收集文件或者想改变输出文件夹.
? 这是假设系统环境变量PATH已经被更新了,包括LoadRunner的安装. 9, Controller通过使用 Windows 操作系统文件夹里的参数值来启动.因为
LoadRunner被设计成在一个机器上一次只能运行一个Controller实例,所以需要使用Windows文件夹.
## 为了在几个应用之间快速的切换, 在Controller工作之后保存
LoadRunner的ini文件, 然后使用记事本来制作一个批处理文件. 在执行
1
wlrun之前拷贝应用程序的指定版本的ini文件. 下面是一个应用程序文件拷贝的例子:
copy %WinDir%/wlrun7-XXX.ini %WinDir%/wlrun7.ini copy %WinDir%/wlrun7-XXX.dft %WinDir%/wlrun7.dft 需要修改一些默认值:
? 在wlrun7.ini文件的output区域,
MaxNumberOfOutputMessages=from 10000 to 100000, 这就限制了存储在数据库中的输出信息的数目.
? MaxOutputUIRowsToShow限制了在Controller的输出窗口中显示的信息/错误行总数.
? 在LoadRunner程序文件的 dat\\protocols 文件夹下的
QTWeb.lrp文件的[Vugen]部分, 添加一个MaxThreadPerProcess=5来限制由每个负载生成器mdrv.exe进程管理的线程数.
? 存储在wlrun5.ini 和wlrun7.dft文件中的DefaultScenarioDir, DefaultscrīptDir, DefaultResultDir,[Recent File List]几个数据的值会在每次Controller改变的时候更新。
10, 在Vu scrīpts中定义的每个虚拟用户进行的操作是用LoadRunner
的VuGen.exe生成的. 当这个程序启动后, 它在windows文件夹下存储了comparamui.INI文件来保存[LastTablesUsed]下面文件的历史,并且保存由Insert > New Parameter > Dates 菜单指定的[ParamDialogDates].
VuGen在Windows文件夹下存储和检索vugen.ini文件.当使用JAVA的时候,需要添加一些其他的调试选项: [DynaDlg] JavaLevel=3
当在VuGen 8.1中使用8.0的脚本, 往Vugen.ini中加入信息: [Editor]
OLDEDITOR = 1
VuGen在LR文件夹template/qtwebdefault.cfg里和脚本文件里打开. Vu scrīpts可以使用脚本外部的参数文件来获得的变量值进行编码. 更多关于VuGen的信息请看脚本编写的章节.
11. 运行过程中,执行结果存储到一个结果文件夹中.
我喜欢在场景执行中把结果设置成自动产生结果.这样,LoadRunner会在每次启动一个场景之后自动产生一个子增的结果名. 例如,结果名称Res1会自动增长到Res12或有时候是R es11-1.
错误被写到output.mdb微软的Access数据库中。
12. 在每一个结果文件夹中, 程序自动创建Log文件夹来包含每个组的日志文件. 运行之后,在Controller中查看日志文件,点 , .然后在组中点右键,选择 “Show Vuser Log”
13. 场景运行的时候, 监视器在本地维护每个主机的计数器.
14. 运行完成之后, \进程处理.eve和.lrr结果文件, 并且在结果文件夹下创建一个临时的.mdb数据库.
在处理大数据量的结果时, 为了防止错误发生,使用MSDE. ……
2
15.分析模块(8,320K analysisu.exe)使用mdb数据库中的数据来产生分析图表和报告.
16. 每一次场景运行后的结果文件results_name.lrr,也叫分析文档文件,由分析程序来读取并且显示百分位图表.
Loadrunner系列学习--Loadrunner架构(1)
一:Loadrunner结构概述
Loadrunner通过使用虚拟用户代替真实用户操作客户端软件来工作的,例如使用IE对IIS或者Apache Web服务器发送HTTP请求.
多个虚拟用户客户端的请求是有负载生成器(Load Generator)产生的,目的是对不同类型的被测服务器产生负载.
这些负载生成器代理(load generator agent )是由Mercury's的控制器(Controller)来控制启动或停止的.
控制器根据由编译的脚本引起的场景(Scenarios)和相关的运行时设置(Run-time Settings)来控制负载测试的运行.
这些脚本是由虚拟用户脚本生成器(Virtual user scrīpt Generator)也叫VUGen生成的.它是通过截获网络应用程序的客户端和服务器之间的网络通信包而产生的C语言脚本,这些脚本可以被虚拟用户执行.
对于Java客户端,VuGen通过客户端的JVM的钩子技术来捕获请求. 在运行时,每个机器的状态由控制器监控.
运行结束后,控制器把监视日志和右负载生成器产生的日志结合起来给分析器(Analysis)使用.分析器能够把这些日志生成结果报表和Microsoft Word格式的图表,水晶报表或HTML格式页.
每一个由分析器生成的HTML报表页包括一个到结果的超链接,这些结果文件可以用Microsoft Excel打开来进行其他的分析.
运行时产生的错误都被存储在一个数据库中,该数据库可以用Microsoft Access打开. 虚拟用户:
3
不象WINRUNNER那样只能模拟一个客户端用户,LOADRUNNER能够模拟成千上万的虚拟用户.
负载生成器由VnGen脚本控制.这些脚本是使用跟被测客户 …… 此处隐藏:3626字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [资格考试]机械振动与噪声学部分答案
- [资格考试]空调工程课后思考题部分整合版
- [资格考试]电信登高模拟试题
- [资格考试]2018年上海市徐汇区中考物理二模试卷(
- [资格考试]坐标转换及方里网的相关问题(椭球体、
- [资格考试]语文教研组活动记录表
- [资格考试]广东省2006年高应变考试试题
- [资格考试]LTE学习总结—后台操作-数据配置步骤很
- [资格考试]北京市医疗美容主诊医师和外籍整形外科
- [资格考试]中学生广播稿400字3篇
- [资格考试]CL800双模站点CDMA主分集RSSI差异过大
- [资格考试]泵与泵站考试复习题
- [资格考试]4个万能和弦搞定尤克里里即兴弹唱(入
- [资格考试]咽喉与经络的关系
- [资格考试]《云南省国家通用语言文字条例》学习心
- [资格考试]标准化第三范式
- [资格考试]GB-50016-2014-建筑设计防火规范2018修
- [资格考试]五年级上册品社复习资料(第二单元)
- [资格考试]2.对XX公司领导班子和班子成员意见建议
- [资格考试]关于市区违法建设情况的调研报告
- 二0一五年下半年经营管理目标考核方案
- 2014年春八年级英语下第三次月考
- 北师大版语文二年级上册第十五单元《松
- 2016国网江苏省电力公司招聘高校毕业生
- 多渠道促家长督导家长共育和谐 - 图文
- 2018 - 2019学年高中数学第2章圆锥曲线
- 竞争比合作更重要( - 辩论准备稿)课
- “案例积淀式”校本研训的实践与探索
- 新闻必须客观vs新闻不必客观一辩稿
- 福师大作业 比较视野下的外国文学
- 新编大学英语第二册1-7单元课文翻译及
- 年产13万吨天然气蛋白项目可行性研究报
- 河南省洛阳市2018届高三第二次统一考试
- 地下车库建筑设计探讨
- 南京大学应用学科教授研究方向汇编
- 2018年八年级物理全册 第6章 第4节 来
- 毕业论文-浅析余华小说的悲悯性 - 以《
- 2019年整理乡镇城乡环境综合治理工作总
- 广西民族大学留学生招生简章越南语版本
- 故宫旧称紫禁城简介




