Loadrunner系统知识(非常好)(2)
1.路径存储在wlrun.ini文件中的[ProductEnv]下作为M_ROOT.该文件在C:\\WINNT (或 C:\\Windows)
2.C:\\WINNT (或 C:\\Windows)下同样存有安装时的Maintenance Number (MPN),存在mercury.ini 文件中. 其他省略.
好了,今天先翻译到这里了,该吃中午饭了,哈哈,下期会翻译LOADRUNNER的内部结构.
Loadrunner学习---脚本编写(1)
VuGen脚本文件的开发过程
1。定义测试项目的目标,环境,脚本,测试数据,硬件等。脚本应该符合编码规范或编码习惯。
2。创建一个版本文件夹来保存被测应用程序相关的各种不同资源,例如截获的.png/.gif图形文件,录制过程保存的html文件,录制中的所有html源文件和VuGen的录制日志。
3。列出(在表里)每一个手动操作业务过程需要的实际步骤 1)截取每一个屏幕图像(screen image )。
2)为每一个屏幕(screen)分配一个唯一的事务名称。
3)为处理的每一个步骤使用的技术组件(URL或者方法和函数)做注释。 4。创建一个版本文件夹。
注:我不喜欢使用默认位置,我喜欢把所有脚本相关的文件放到一个相同的文件夹中。不幸的是,这意味着如果我在不同的测试间互相交换录制,那我每次都得记住修改默认的设置。
注:当录制一个新的脚本时,我喜欢选择多协议而不是单个协议。。。 5。根据你的业务处理列表上指定的用户使用步骤和screen的顺序来使用VuGen录制程序,产生一系列脚本代码。在“开始录制”对话框中 * 使用COM/DCOM 协议时,选择“Win32应用程序“
6
* 使用Web(HTTP/HTML)时,选择“Internet Application“ 6。根据改进脚本方法和脚本语言规则来修改脚本。 改进脚本的方法:
1)为每一个GUI的screen添加事务语句来获得事务时间。 2)添加显示数据来帮助调试。
3)添加验证点来验证是否期望的文本或者图片在每个脚本执行后显示。 4)通过插入新参数和动态获得整个文件的方式对硬编码的URL,用户id,用户密码和其他的变量数据进行参数化。这样脚本中的参数就可以被动态的替换,以此来模拟运行时不同数据的使用。
5)添加重试逻辑(retry logic)来处理不可见的错误。 6)添加随机函数发生器变化脚本来模拟真实的负载。
7)添加if/else逻辑来检查结果,或者来进行合适的操作,或者来在合适的时候退出脚本。
8)在一个screen中添加语句来捕获需要在其他命令中使用的数据。当使用Microsoft .NET的web form技术的时候,需要避免习惯性的“脚本超时“错误。
9)添加语句来调用外部库函数,以便保存和检索在内存Virtual Table Server中的数据。 10)处理XML.
11)添加语句来模仿客户端的Javascrīpt问题。 12)添加语句来管理超时。
13)从事务计时器中计算和减去无效的时间。 14)输出日志。 15)添加集合点。 16)添加时间(Timing)。 脚本语言规则:
7
把cookie代码标注出来(因为脚本运行的时候他们被再次执行)。 7。通过在VuGen中运行来调试和调整脚本(单个用户),同时运行时设置的日志能够显示如下信息:
辨别和解决脚本编辑错误。 决定timing.
设置初始运行设置的场景。
8。在控制器中使用full test Runtime Settings来运行脚本。 脚本录制和产生:
建立一个新脚本的第一步是选择一个单协议或多协议。 * 一些协议可能在多协议模式下不能用。 * 只有在多协议的GUI下你才能重新排列action
在使用Java协议之前,确保你在环境变量的路径下有JDK,否则你可能会遇到这个错误:
Error: Failed to find javac.exe Java Compiler in Path and JDK installation folder in registry. [MsgId: MERR-22981]
Error: Failed to get JRE version. Check that your PATH environment variable contains \\bin directory. [MsgId: MERR-22986] 当选择Java协议的时候:
* 只有选择了“RMI Java”才能录制。
* 如果选择“Java user”,“开始录制”图标或菜单是灰色的。 当你打开一个新的脚本时,默认的脚本名称为“noname1”。下一个新的脚本名称为“noname2”,以此类推。
注:有顺序的录制多个动作(而不是录制一个动作,然后停止开始另一个动作)。这样能使你识别出在你脚本中需要关联的序列码(在例如PeopleSoft的程序中)。 注:每次修改脚本后,脚本都需要重新编译。 Java:略
脚本文件的调用:
8
VuGen是默认在你双击.usr后缀文件的时候被调用。
在这个文件里,Javascrīpt被指定为“Type=General-Js”。 为了避免重新编译,我使用命令行的变量和值得组合这样的批处理文件来调用控制器。例如:
REM LoadRun from LoadRunner 8.0 default installation location: SET LR80=C:\\Program Files\\Mercury Interactive\\Mercury LoadRunner\\bin cd %LR80%
wlrun.exe -TestRun c:\\Temp\\Scenario1.lrs -port 8080 脚本文件Action
主机上的代理发送的到服务器的请求是由虚拟用户生成器创建的(VuGen.exe)action的回放实现的。 Loadrunner创建的脚本有三部分:
* vuser_init 来初始化 Vuser。执行在这部分的虚拟用户的状态是\ * Action 用来重复多次迭代 执行到这部分的虚拟用户的状态是\
* vuser_end 推出虚拟用户。 执行到这部分的虚拟用户的状态是\如果你的脚本只需要执行一次,你仍然需要把这些脚本写到Action部分,因为在其他部分(vuser_init 和vuser_end)有些命令是不合法的或者会忽略掉。 VuGen允许脚本包含多个action。所以我为每一个screen创建一个新的action。 注:如果你想使用不同的用户登陆,就不要把登陆操作放到vuser_init中,而是放到action部分。
VuGen根据选择脚本选择协议的不同来添加不用的引用到“.h”头文件。 C的.h头文件
对于Web(HTTP/HTML)协议, 创建globals.h,包含内容:
9
#ifndef _GLOBALS_H #define _GLOBALS_H
//-------------------------- // Include Files #include \#include \
#include \ // recorded for web_custom_request functions. //-------------------------- // Global Variables
#endif // _GLOBALS_H 对于COM/DCOM协议:略 C脚本语言的格式:
LoadRunner使用的没有进行微软扩展的ANSI C语法。任意最小的action代码块如下:
#include as_web.h // from LoadRunner's include folder. Action1() { /* comment block */ // comment line
return 0; }
C脚本编译/类库
当VuGen编译脚本时,产生一个\文件,这个文件包含了所有action的代码和包含文件。这就是为什么会有语法错误“not writing pre_cci.ci”的原因。
控制器编译这些.ci文件为机器目标码。
VuGen在每一个脚本文件中自动创建一个lib文件夹,这个文件夹中包含了combined_lib.c文件。该文件包含了所有引用文件。
#include \ 来定义 UNIX或者Windows的函数。 #include \ LoadRunner'的模版文件夹的其中一个。
10
…… 此处隐藏:1814字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [资格考试]机械振动与噪声学部分答案
- [资格考试]空调工程课后思考题部分整合版
- [资格考试]电信登高模拟试题
- [资格考试]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年整理乡镇城乡环境综合治理工作总
- 广西民族大学留学生招生简章越南语版本
- 故宫旧称紫禁城简介




