Loadrunner 问题总结

1、如图错误:

2、C:Program Files (x86)HPLoadRunnerdatchannel_configure_merge.dat [General]下加入 shared_memory_max_size=100
3、C:Program Files (x86)HPLoadRunnerlaunch_servicedatchannel_configure.dat [General]下加入 shared_memory_max_size=100
4、C:Windowswlrun5.ini 加入了AgentMaxThreadsPerDriver=50 to AgentMaxThreadsPerDriver=20 or 10
5、改为线程
6、将系统环境变量TEMP=%SystemRoot%TEMP 修改为C: emp
7、3+4+5其中一个解决了26000的错误

8、设置思考时间,http线程,解决了:10489,19890,82801的错误

9、JVM配置

java -Xmx2g -Xms2g -Xmn512m -Xss1m
-XX:ParallelGCThreads=4 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC
-XX:+PrintGC -XX:+PrintGCDetails -Xloggc:../jcLog

10、参数化的时候各种问题,改成C++随机数也可以,终于跑起来了

11、用到命令jstat -gc pid 10000 和jmap -heap pid 和top

代码如下:

Action()
{

int itera_num,rand_num,i;
char rand_bid[24]="";
char StrTable[]="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";

for (i=0;i<=8;i++){
rand_num=rand()%62; //生成一个0到61的一个随机数
strncat(rand_bid,StrTable+rand_num,1); //拼接9次:StrTable+rand_bid 取StrTable中随机位的字符
}
lr_save_string(rand_bid,"rand_bid_value");
//lr_output_message("rand_bid==%s",rand_bid);

web_reg_save_param_ex(
"ParamName=Code",
"LB=err_code":",
"RB=,",
SEARCH_FILTERS,
LAST);


//web_set_max_html_param_len("10240000");

lr_rendezvous("concurrent");
lr_start_transaction("request");
lr_think_time(1);
web_custom_request("request",
"URL=http://自己IP",
"Method=POST",
"TargetFrame=",
"Resource=0",
"Referer=",
"Mode=HTTP",
"EncType=application/json",
"Body={json串<rand_bid>..............}",LAST);//此处用上面随机生成码

if(atoi(lr_eval_string("<Code>"))==200)//这个 Code不是消息头的,是Body内的,巧合
lr_end_transaction("request",LR_PASS);
else
lr_end_transaction("request",LR_FAIL);

return 0;

}

原文地址:https://www.cnblogs.com/Darrenblog/p/8379157.html