51Testing软件测试论坛

标题: 函数lr_whoami的使用【已解决】 [打印本页]

作者: cuizhihui    时间: 2008-1-31 11:23
标题: 函数lr_whoami的使用【已解决】
使用函数lr_whoami想查看用户信息,但执行日志中并没有打印出用户的信息。
运行时设置中,日志为扩展日志并勾选下面的选项

脚本如下:
int Vuser,scid;

char *vuser_group;

lr_whoami(&Vuser, &vuser_group, &scid);

该函数的帮助信息:

Returns information about the Vuser executing the script.

The lr_whoami function gets information about the Vuser.

Note that the sgroup parameter is a pointer to constant data and should only be read, not altered. Memory for the string is allocated automatically. You do not have to allocate explicitly in the script.

If you do not want to retrieve one or more of the parameters, replace the parameter name with NULL.

Not applicable for products that do not run individual Vusers.



请各位高手帮忙看下什么原因? 多谢!

[ 本帖最后由 cuizhihui 于 2008-1-31 16:46 编辑 ]
作者: iori    时间: 2008-1-31 14:23
这个也许对你有帮助
Action()
{
int id,scid;//定义保存vuser信息的2个整形变量
char *group;//定义保存groupname
char *filename = "c:\\work\\log\\whoami.log";
long file_stream;
if ((file_stream = fopen(filename,"a+")) == NULL) //打开文件
{
lr_error_message("Cannot open %s", filename);
return -1;
}
lr_whoami (&id,&group,&scid);//获取变量
if (id > 10)
{
fprintf(file_stream,"vuser用户的信息:id=%d,group=%s,scid=%d\n",id,group,scid);
}
else
fprintf(file_stream,"id=%d,group=%s,scid=%d\n",id,group,scid);
fclose(file_stream);
return 0;
}
场景:运行15个用户跑这个脚本,log文件内容如下
id=3,group=lr_whoami,scid=0
id=1,group=lr_whoami,scid=0
id=2,group=lr_whoami,scid=0
id=4,group=lr_whoami,scid=0
id=6,group=lr_whoami,scid=0
id=5,group=lr_whoami,scid=0
id=7,group=lr_whoami,scid=0
id=8,group=lr_whoami,scid=0
id=9,group=lr_whoami,scid=0
id=10,group=lr_whoami,scid=0
vuser用户的信息:id=11,group=lr_whoami,scid=0
vuser用户的信息:id=13,group=lr_whoami,scid=0
vuser用户的信息:id=12,group=lr_whoami,scid=0
vuser用户的信息:id=14,group=lr_whoami,scid=0
vuser用户的信息:id=15,group=lr_whoami,scid=0
作者: fish_yy    时间: 2008-1-31 15:15
多看看帮助自己带的例子:)
作者: cuizhihui    时间: 2008-1-31 16:43
原帖由 iori 于 2008-1-31 14:23 发表
这个也许对你有帮助
Action()
{
int id,scid;//定义保存vuser信息的2个整形变量
char *group;//定义保存groupname
char *filename = "c:\\work\\log\\whoami.log";
long file_stream;
if ((file_stream = fop ...



已经解决,非常感谢!
作者: wxh231    时间: 2009-9-24 23:12
标题: 请问楼主
char *group;//定义保存groupname
char *filename = "c:\\work\\log\\whoami.log";
请问这个地方一定要定义成指针类型的变量吗?我是菜鸟请多指教。
作者: wxh231    时间: 2009-9-24 23:28
标题: 请教fclose函数
为什么在上例中是fclose(file_stream)而不是fclose(*filename ).file_stream是什么原因要定义long型呢?




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2