查看LoadRunner脚本请求日志和服务器返回值方法


转载自 http://www.blogjava.net/qileilove/archive/2013/10/24/405588.html
http://www.blogjava.net/qileilove/archive/2013/11/01/405884.html
 
1、  查看所有请求日志和请求响应信息:
  采用 LoadRunner工具Run-time settings或按键盘F4,选择LOG设置,选择Extended log->Data returned by  server和Parameter substitution,就可以搞定,但是这里设置是记录所有请求的日志。
  详细介绍Extended log中Data returned by server、Parameter substitution、Advanced trace的作用:
  (1)、选择Data returned by server,记录或打印指定给脚本的所有参数及其相应的值
  (2)、选择Parameter substitution,记录或打印服务器返回的所有数据
  (3)、选择Advanced trace(高级跟踪),记录Vuser在会话期间发送的所有函数和消息
   2、  查看某个请求日志和请求响应信息:
  采用lr_set_debug_message()函数,可以单独记录某个请求或某行脚本回放的日志,函数具体详情如下:
  int  lr_set_debug_message (unsigned int message_level, unsigned int on_off);
  解释:lr_set_debug_message函数是设置脚本在执行的调试消息级别message_level。通过设置消息级别,可以确定记录哪些信息。启动设置的方法是将LR_SWITCH_ON作为on_off传递,反之禁用设置的方法是LR_SWITCH_OFF作为on_off传递,以下为lr_set_debug_message()函数中对应的参数值:
  参数on_off说明:
  【LR_SWITCH_ON】为启用设置,对应值为:
  【LR_SWITCH_OFF】为禁用设置,对应值为:0

案例(回放脚本过程中,记录或打印该请求脚本从服务器返回的所有数据):
lr_set_debug_message( 16 | 2,1 );
web_submit_data("loginAction",
"Action=http://{IP}/TLTP/loginAction",
"Method=POST",
"RecContentType=text/html",
"Referer=http://{IP}/TLTP/",
"Snapshot=t9.inf",
"Mode=HTTP",
ITEMDATA,
"Name=userName", "Value=test", ENDITEM,
"Name=password", "Value=123456", ENDITEM,
LAST);
lr_set_debug_message( 16 | 2,0 );
或者
lr_set_debug_message(LR_MSG_CLASS_EXTENDED_LOG | LR_MSG_CLASS_RESULT_DATA, LR_SWITCH_ON );
web_submit_data("loginAction",
"Action=http://{IP}/TLTP/loginAction",
"Method=POST",
"RecContentType=text/html",
"Referer=http://{IP}/TLTP/",
"Snapshot=t9.inf",
"Mode=HTTP",
ITEMDATA,
"Name=userName", "Value=test", ENDITEM,
"Name=password", "Value=123456", ENDITEM,
LAST);
lr_set_debug_message(LR_MSG_CLASS_EXTENDED_LOG | LR_MSG_CLASS_RESULT_DATA, LR_SWITCH_OFF);
  以上两种案例方法,结果一致,只是一种采用对应日志级别的值,一种采用对应日志级别的参数名标示
 
二、LoadRunner日志设置与查看
1.打开EXtended Log
  Log告诉了我们一切,默认的Log是standard Log,这时远远不够的.我们要extended log,打开路径为runtime settings-->log-->extended log.把parameter substitution和data returned byserver和advanced trace大家根据需要勾选吧.
   2.log文件位置,特别是controll执行后,怎么看log。这里一一说明一下:
  (1)vgen的runtime settings设置:在vgen中,我们必须写输出函数输出信息,将我们所想要了解的信息用函数输出,主要有这么几个函数输出信息:lr_output_message,lr_error_message,lr_log_message。这些函数请参阅 help-->function reference.
  其次,我们要在runtime settings中设置,勾选always send messages,具体的做法是:runtime settings--->log-->always send messages,这样我们才能写出Log,在我们的脚本所在的文件夹中,有两个文件很重要,mdrv.log.txt和output.txt文件,lr_log_message只会把信息输到mdrv.log文件中,而lr_output_message则会写进以上两个文件。
  (2)controller的runtime settings设置:在controller我们也要设置runtime settings,这样才能在场景运行后查看相应 日志,而且每个用户组的runtime settings都有设置。设置的方法是:在controller的design标签页中,右下角的部分有runtime settings按钮,我们点击它,设置的方法与在vgen中一样的。很多朋友都会想知道多次迭代,参数是否正确的导入了呢,我们依旧查看log,我们在执行结束后,查看结果目录的Log文件夹,如果是负载生成器运行的话,则在tmp目录。
   Windows环境下,日志文件output.txt保存在脚本目录中;在UNIX环境下,保存在标准输出中。
【Vuser】——【Run Time Settings】——【General】——【Log】
1、【Enable logging】启动日志功能;(建议运行场景进行负载 测试时关闭此项)
2、【Send messages only when an error occurs】仅发送出错时的日志,可设置缓存大小(默认1KB);
3、【Always send message】发送所有日志;
4、【Standard log】标准日志,脚本运行时发送函数信息;
【Extended log】扩展日志:
5、【Parameter substitution】脚本运行时,在【Replay log】显示参数信息、参数值;
6、【Data returned by  server】记录服务器返回的所有数据;
7、【Advanced trace】多用于脚本调试,记录VU在运行期间发送的所有函数信息。
  ========================================
  【Replay log】显示的日志颜色:
  1、红色:错误信息;
  2、橙色:迭代信息;
  3、蓝色:事件信息;
  4、黑色:输出信息;
  5、绿色:字符信息。
  ========================================
   输出函数:
1、lr_log_message()    // 输出信息,并记录到 output.txt 中
2、lr_output_message()    // 输出信息,不记录到日志文件中
3、lr_message()    // 输出信息,不记录到日志文件中
4、lr_error_message()    // 输出信息,不记录到日志文件中


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM