Loadrunner中C脚本设计知识积累.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Loadrunner中C脚本设计知识积累

Loadrunner中C脚本设计知识积累(不断更新) (2009-01-18 19:28:49) ??? 前边已经发了不少关于Loadrunner中脚本编写的文章,现在发一个帖子,作为Loadrunner中C脚本编写一些该注意问题的帖子,作为对脚本编写知识的进一步巩固。 ?1.全局变量和局部变量 ? vuser_init() { ?//Allocates a block of memory.? ?char * p = (char * )malloc(1000 * sizeof(char)); ?return 0; } ------------------------------------------ ?Action() { ?return 0; } ------------------------------------------ vuser_end() { ?//Frees a block of memory.? free(p);? ??return 0; } ? ?如上脚本所示: ????最初的思路是在 vuser_init中定义指针p,并为其malloc函数申请1000个字节的内存空间,为了避免内存泄露,用户试图在vuser_end中释放p指向的内存空间,但free(p),由于变量p是在vuser_init中定义的,其作用域仅局限于vuser_init,离开了vuser_init,在vuser_end编译是会报错“p变量未被定义”。 ??? 这样我们的问题就产生了,那如何在vuser_init()、Action()、vuser_end()中使用全局变量呢? ??? 这里我们就要用到全局变量,它是在函数外部定义的变量。它不属于哪一个函数,它属于一个源程序文件,其作用域是整个源程序。 ??? 在Loadrunner的HTTP协议录制的web系统时,会生成一个globals.h文件,在这里定义的变量相当于;Loadrunner脚本的全局变量,可以在vuser_init()、Action()、vuser_end()中被使用。 ?? ?在globals.h文件中,添加全局变量的方法如下: ? #ifndef _GLOBALS_H #define _GLOBALS_H //-------------------------------------------------------------------- // Include Files #include lrun.h #include web_api.h #include lrw_custom_body.h //-------------------------------------------------------------------- // Global Variables? 包含全局变量 char * p; #endif // _GLOBALS_H ? ?注意:红色部分为添加的全局变量的位置; ???? 然后,执行脚本,脚本就可以通过了,呵呵! ???2.lr_whoami() 使用的一点说明; ???? 说明:lr_whoami()在VU中运行返回的值是:-1 举例: ?Action() { int id, scid; char *vuser_group; lr_whoami(id, vuser_group, scid); lr_message( Group: %s, vuser id: %d, scenario id %d, ??????? vuser_group, id, scid); ?return 0; } ? 执行脚本结果如下: Virtual User Script started Starting action vuser_init. Web Turbo Replay of LoadRunner 9.0.0 for WINXP; WebReplay82 build 5727? ?[MsgId: MMSG-27143] Run-Time Settings file: C:\Documents and Settings\Administrator\Local Settings\Temp\noname3\\default.cfg? ?[MsgId: MMSG-27141] Ending action vuser_init. Running Vuser... Starting iteration 1. Starting action Action. Group: None, vuser id: -1, scenario id 0 Ending action Action. Ending iteration 1. Ending Vuser...

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档