您的位置:首页 > 其它

Loadrunner 用户自定义函数使用

2016-08-11 13:47 141 查看
Loadrunner可以使用标准C语言的函数,因此我们可以在脚本中编写自己的函数用于调用,把脚本结构化,更好的进行重用。

先看一个例子:

Action()

{

int i,j;

j = 1;

for (i=0;i<10;i++)

{

lr_message("i+j=%d",sum(i,j));

j++;

}

return 0;

}

int sum(int a,int b)//简单的求和函数

{

return a+b;

}

例子说明:

我写了一个很简单的函数sum,求2个整数的和;

1、函数实现可以放在lr脚本的任意位置(函数的作用域);

例如action、vuser_init、vuser_end这些脚本的主函数外,则不需要考虑函数的作用域;在任意地方都可以调用。

如果放到Action()、vuser_init()、vuser_end()这些函数体内,则只有本函数体内才可以调用。

例如:

Action()

{

int sum(int a,int b)//简单的求和函数

{

return a+b;

}
int i,j;

j = 1;

for (i=0;i<10;i++)

{

lr_message("i+j=%d",sum(i,j));

j++;

}

return 0;

}

上例则只有action内部可以调用sum函数。
2、如果想跳出函数,使用return 0或break即可
再看一个稍微复杂点的例子:

Action()

{

int aa[20];

CheckChar("AaBbCc001 1 1",aa);

lr_message("字符串长度为:%d",aa[0]);

lr_message ("统计-大写字符:%d",aa[1]);

lr_message ("统计-小写字符:%d",aa[2]);

lr_message ("统计-数字字符:%d",aa[3]);

lr_message ("统计-空格字符:%d",aa[4]);

return 0;

}

void CheckChar(char ch[],int a[])//统计函数,分别统计字符串长度;大写、小写、数字和空格的个数,返回整形保存在数组里

{

int i;

for(i=0;i<=3;i++)

a[i]=0;

a[0] = strlen(ch);//获取字符串长度

for(i=0;i<a[0];i++)

{

if(ch[i]>='A' && ch[i]<='Z') //如果是大写字符

a[1]++;

else if(ch[i]>='a' && ch[i]<='z')//如果是小写字符

a[2]++;

else if(ch[i]>='0' && ch[i]<='9') //如果是数字

a[3]++;

else if(ch[i]==' ') //如果是空格

a[4]++;

}

}

写了一个检查字符串成分的函数,只能检查出字符串长度,大写、小写、数字和空格的个数。
由此可见,lr中使用C函数还是比较灵活。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息