lr_whoami:得到vuser的信息。
例如:
A.录制一个登录tom邮箱的脚本,当然要在脚本中首先定义
int id,scid;
char *groupname;
在脚本的的用户名、密码之后插入如下语句
lr_whoami(&id, &groupname, &scid);
lr_output_message("**********id =%d", id);
lr_output_message("**********groupname=%s", groupname);
lr_output_message("**********scid=%d", scid);
把脚本保存,命名为tomLogMail
B.运行脚本确保脚本可以成功执行,打开controller设置场景。有两点需要注意一下:
1,为了方便查找把结果文件存放在一个特定的目录下如f:\loadrunner_scrīpt\tomlogmail\res
2,在controller中的运行时设置Run-time Settings-Log中选中总是发送消息Always send messages.此项非常重要,如果不选中该项在F:\LoadRunner_scrīpt\tomLogMail\res\log目录下将不会有任何log生成。
C.我设置3个vuser每15s增加一个。成功运行脚本
到F:\LoadRunner_scrīpt\tomLogMail\res\log目录下,看到有三个log日志文件tomLogMail_1.log、tomLogMail_2.log、tomLogMail_3.log,打开就可以看到以下信息
tomLogMail_1.log中:
Action.c(64): **********id =1 [MsgId: MMSG-17999]
Action.c(65): **********groupname=tomLogMail [MsgId: MMSG-17999]
Action.c(66): **********scid=0 [MsgId: MMSG-17999]
tomLogMail_2.log中:
Action.c(64): **********id =2 [MsgId: MMSG-17999]
Action.c(65): **********groupname=tomLogMail [MsgId: MMSG-17999]
Action.c(66): **********scid=0 [MsgId: MMSG-17999]
tomLogMail_3.log中:
Action.c(64): **********id =3 [MsgId: MMSG-17999]
Action.c(65): **********groupname=tomLogMail [MsgId: MMSG-17999]
Action.c(66): **********scid=0 [MsgId: MMSG-17999]
此log中vuser的信息就可以帮助我们了解每一个vuser的信息,尤其是当我们一次运行多个脚本的时候,清楚的了解每一个vuser的信息有时候可以帮助我们很好的解决一些问题。
lr_user_data_point:作用是为了便于分析用户可以自己定义需要监控的数据。就好似在controller中有事务响应时间、吞吐量这些数据一样我们可以在场景运行的过程中监控这些数据的变化图标,然而lr是一种允许客户化的软件,测试人员可以自己定义变量、编写脚本,这就会引入一个问题测试人员需要可以通过图表监控一个自己定义的数据,这就要用到lr_user_data_point函数。
例如:
登录tom邮箱,需要监控在登录成功的时候cpu的利用率是多少。
A.写一个函数
Int cup_monitor() {}用于监控登录成功的时候cpu的利用率返比如40%,该函数回一个int k比如40。
B.在脚本登录用户名密码的后面插入函数
lr_user_data_point("monitorcput",k);
C.在controller中设置场景,运行,就可以看到”User Defined Data Points”是淡蓝色的,把它拖动到右边的显示区,就可以在场景运行过程中监控自定义的数据。
D.打开Analysis进行分析,也可以看到”User Defined Data Points”是淡蓝色可用的,analysis已经成功生成了数据图表,以供测试人员分析之用。
如果不设置lr_user_data_point函数,运行场景在controller和analysis中的树状菜单中”User Defined Data Points”都呈现灰色是不可用的。