Loadrunner message函數詳細分析[2] 軟件測試
int lr_debug_message (unsigned int message_level, const char *format, …… );中文解釋:lr_debug_message函數在指定的消息級別處于活動狀態時發送一條調試信息。如果指定的消息級別未出于活動狀態,則不發送消息。您可以從用戶界面或者使用lr_set_debug_message, 將處于活動狀態的消息級別設置為MSG_CLASS_BRIEF_LOG或MSG_CLASSS_EXTENDED_LOG.要確定當前級別,請使用lr_get_debug_message. unsigned int lr_get_debug_message ( );中文解釋:lr_get_debug_message函數返回當前的日志運行時設置。該設置確定發送到輸出端的信息。日志設置是使用運行時設置對話框或通過使用lr_set_debug_message函數指定的。
int lr_set_debug_message (unsigned int message_level, unsigned int on_off);中文解釋:lr_set_debug_message函數設置腳本執行的調試消息級別message_lvl.通過設置消息級別,可以確定發送哪些信息。 啟動設置的方法是將LR_SWITCH_ON作為on_off傳遞,禁用設置的方法是傳遞LR_SWITCH_OFF.參數message_level說明:「日志級別」====「C語言標志」====「值」====「Runtime-setting - Log操作」
「Disabled」====「LR_MSG_CLASS_DISABLE_LOG」====「0」====「不勾選Enable logging」
「Brief」====「LR_MSG_CLASS_BRIEF_LOG」====「1」====「勾選Standard log」
「Extended Log」====「LR_MSG_CLASS_EXTENDED_LOG」====「16」====「勾選Extended log」
「Result Data」====「LR_MSG_CLASS_RESULT_DATA」====「2」====「勾選Data returned by server」
「Parameter Substitution」====「LR_MSG_CLASS_PARAMETERS」====「4」====「勾選Parameter substitution」
「Full Run-Time Trace」====「LR_MSG_CLASS_FULL_TRACE」====「8」====「 勾選 Advanced trace」
「Only on error」====「LR_MSG_CLASS_JIT_LOG_ON_ERROR」====「512」====「勾選send messages only when an error oclearcase/" target="_blank" >ccurs」
參數on_off說明:「LR_SWITCH_ON」啟用設置「LR_SWITCH_OFF」禁用設置看下面的小例子:Action()
{ int log_leavl;log_leavl = lr_get_debug_message();lr_error_message ("當前是:%d",log_leavl);return 0;}當我設置只有錯誤信息(error)打印「勾選send messages only when an error occurs」,例子運行結果是:當前是:513;為什么不是512呢,我發現我實際選擇的是「Enable logging + send messages only when an error occurs」,按上面的參數說明,就是「1+512」,也就是513了;因此:lr_get_debug_message返回的int數其實是所有勾選操作的代表值相加!
再看下面設置的例子:Action()
{ //設置runtime-setting的日志選項「不勾選Enable logging」
char *a;a = "ABC";lr_set_debug_message (LR_MSG_CLASS_EXTENDED_LOG |LR_MSG_CLASS_PARAMETERS,LR_SWITCH_ON);//打開Runtime-setting Log 的Parameter substitution設置lr_debug_message(LR_MSG_CLASS_PARAMETERS,"打開參數保存的系統日志");lr_save_string("aa",a);lr_debug_message(LR_MSG_CLASS_PARAMETERS,"關閉參數保存的系統日志");lr_set_debug_message (LR_MSG_CLASS_EXTENDED_LOG |LR_MSG_CLASS_PARAMETERS,LR_SWITCH_OFF);//關閉Runtime-setting Log 的Parameter substitution設置return 0;}因為設置了runtime-setting不打印任何日志,所以正常運行腳本應該沒有任何日志輸出;但是使用lr_set_debug_message函數打開了日志的設置(輸出保存參數操作的日志)
因此腳本運行到lr_save_string("aa",a)時,就輸出了日志如下:打開參數保存的系統日志Action.c(7): Notify: Saving Parameter "ABC = aa"關閉參數保存的系統日志==============================================================參考資料:Loadrunner 8.1 函數手冊英文(Virtual User Generator - Help -Function Reference)
希望大家一起努力把lr用熟用透!!!
原文轉自:http://www.anti-gravitydesign.com