整理 LoadRunner 腳本開發高頻函數,便於查閱與復制。
1. 關聯函數
// 註冊關聯,獲取第一個匹配值,成功返回 0
web_reg_save_param("參數名", "LB=左邊界", "RB=右邊界", LAST);
// 獲取所有匹配值,加 "Ord=All"
// 使用時:{參數名_count} 為個數,{參數名_1} 第一個值...
web_reg_save_param("參數名", "LB=左邊界", "RB=右邊界", "Ord=All", LAST);
左右邊界需根據 TreeView 中 Server Response 確定。
2. 參數賦值與取值
// 字符串賦值給參數
lr_save_string("字符串變量", "參數名");
// 取得參數值(已註冊或 DataFile 類型)
lr_eval_string("{參數名}");
3. 字符串操作
// sprintf 格式化賦值
int index = 56;
char filename[64], *suffix = "txt";
sprintf(filename, "log_%d.%s", index, suffix); // 結果:log_56.txt
// strcat 字符串拼接
char *strcat(char *to, const char *from);
4. 檢查點
// 檢查頁面是否出現指定字符串
web_find("find_time", "What=2006-03-01 18:21:16.882", LAST);
5. 事務函數族
- 開始/結束:lr_start_transaction / lr_end_transaction
- 子事務:lr_start_sub_transaction / lr_end_sub_transaction
- 實例化事務:lr_start_transaction_instance / lr_end_transaction_instance
- 狀態控制:lr_set_transaction_status / lr_fail_trans_with_error
- 數據獲取:lr_get_transaction_duration / lr_get_transaction_think_time / lr_get_transaction_wasted_time
- 暫停/恢復/停止:lr_stop_transaction / lr_resume_transaction
- 清除浪費時間:lr_wasted_time
6. 命令行參數獲取
- lr_get_attrib_double / lr_get_attrib_long / lr_get_attrib_string
7. 信息輸出與調試
- lr_user_data_point:記錄用戶自定義數據點
- lr_whoami:獲取 Vuser 腳本信息
- lr_get_host_name / lr_get_master_host_name:獲取執行主機/Controller 主機名
- lr_output_message / lr_message / lr_error_message:輸出信息到日誌
掌握這些核心 API,腳本開發效率將大幅提升。