用LR做压力测试的时候有时会报错 “解压缩函数(wgzMemDecompressBuffer)失败 返回Code=-5”. Google了一把,也没有解决掉. 因为有些脚本运行时没有问题,感觉可能和请求数据大小相关.调整了一下缓冲区,把“网络缓冲区大小”和“DOM内存分配的默认块大小”都在默认值后面加个0,再次运行竟然好了. OK…
2.LR常用函数以及调用自定义函数 2.1.LR常用函数以及对信息的判断 2.1.1. LR内部自定义函数 在LR脚本中定义变量和编写自定义函数,需将变量的声明放在脚本其他内容的上方,否则会提示[illegal statement termination] 1.编写简单函数 int sum(int a,int b)//简单的求和函数 { return a+b; } AdvSearch() { lr_message("sum = 10+2=%d",sum(9,2)); return 0;…
本次在实际测试情况下,发现程序无缘无故的异常,导致看门狗超时复位,经过排查是malloc函数分配失败的时候,依然对指针进行了操作,导致异常.以前没重视这个问题是因为,总觉的malloc基本都会成功的,假如循环调用一个函数logOutput,里面有malloc和free,那么下次调用logOutput分配相同的空间应该也是成功的(实际上非我所愿).问题函数如下,必须对pBuffer没有分配成功做处理,否则很容易出问题. static inline void logOutput(uint32_t l…
LR常用的函数,协议不一样函数会不一样,这里简单的介绍下HTTP\WEBSERVICE\SOCKET协议常用函数: HTTP: web_set_max_html_param_len("1024");//设置1行数据最大长度,经常会使用到 web_reg_save_param("SupplierId", "LB=SupplierId>", "RB=</b:SupplierId", "SEARCH=BODY&…
2.2.自定义函数以及调用 2.2.1.虚拟用户编程,使用C# 语言DLL 在VS中建立DLL类库项目,编写函数时使用public声明:实现函数后编译生成DLL: 在LR中建立 .Net Vuser脚本工程, 1.手动增加dll的配置,将附加的DLL文件放入bin\references目录下,打开scripts.csproj文件,增加节点引入DLL:或者 2.使用vs2005打开(.Net3.5以下),vs自动给你增加这个dll的配置,注意用不匹配的VS打开项目时,不要对LR的工程文件进行单项升…
1,变量转参数lr_save_string("aaa","param"):将字符串"aaa"或者一个字符串变量,转变成LR的参数{param} 2,参数转变量char var[10];strcpy(var,lr_eval_string("{param}")):将参数{param}转换成C语言中的变量var 3,取值()lr_eval_string("{param}"):取出参数{param}中的值,可嵌套在…
web_set_max_html_param_len()--常用函数 设置可检索并保存为参数的任何HTML字符串的最大长度. intweb_set_max_html_param_len(const char * length); 参数说明: object:评估到类型为WebApi的对象的表达式.通常是webfor Java和Visual Basic.另请参见函数和常量前缀. length:可以检索的任何HTML字符串的最大长度.不要输入大于无符号整数(4294967295)的值的长度. 一般信息…
1,常见格式:(function() { /* code */ })(); 2,解释:包围函数(function(){})的第一对括号向脚本返回未命名的函数,随后一对空括号立即执行返回的未命名函数,括号内为匿名函数的参数. 3,作用:可以用它创建命名空间,只要把自己所有的代码都写在这个特殊的函数包装内,那么外部就不能访问,除非你允许(变量前加上window,这样该函数或变量就成为全局).各JavaScript库的代码也基本是这种组织形式. 为什么要用这个呢? 1,使这段代码被载入时候自动执行.2…
1.变量转参数 lr_save_string("参数内容","param"):将字符串“aaa”或者一个字符串变量,转变成LR的参数{param} 2.参数转变量 char var[10]; strcpy(var,lr_eval_string("{param}")):将参数{param}转换成C语言中的变量var 3.取值() lr_eval_string("{param}"):取出参数{param}中的值,可嵌套在其他函数里…
lr_start_transaction为性能分析标记事务的开始 lr_end_transaction为性能分析标记事务的结束 lr_rendezvous在 Vuser 脚本中设置集合点 lr_think_time暂停 Vuser 脚本中命令之间的执行 lr_end_sub_transaction标记子事务的结束以便进行性能分析 lr_end_transaction标记 LoadRunner 事务的结束Lr_end_transaction("trans1",Lr_auto);lr_en…