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函数还是比较灵活。
先看一个例子:
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函数还是比较灵活。
相关文章推荐
- SQL SERVER 用户自定义函数使用限制
- LoadRunner用户验证码和验证码使用脚本
- Loadrunner使用经验1--用户注册脚本
- LoadRunner用户验证码和验证码使用脚本
- 【loadrunner使用篇】--用户自定义数据采集
- 【LoadRunner知一点】-模拟虚拟用户使用不同的ip
- linux下使用Eclipse创建mysql UDF(用户自定义函数)
- LoadRunner用户验证码和验证码使用脚本
- 在ASP.NET中使用用户控件
- Asp.net开发心得点滴[动态加载的用户控件使用事件委托,交给页面处理的事件无效问题]
- JSP学习笔记(三)-----使用JSP处理用户注册和登陆
- 使用WMI列出Windows中某个目录的用户权限(C#)
- 一个初级的使用GDI+开发的颜色拾取器用户控件
- 原来Gmail中使用了ActiveX,那么如何保证linux用户的访问行呢?
- 通过创建用户profile文件, 限制用户对数据库资源使用
- 如何使用 PageSettings 对象和 PageSetupDialog 控件允许用户选择各种打印选项
- 封装一个用户控件的pager.ascx文件供自己使用
- 在Windows下让不同用户使用不同的分辨率(C# 2005)
- 使用product_user_profile来实现用户权限的设定
- 获得用户使用的IP地址、浏览器类型、操作系统