1. 程式人生 > >LoadRunner 函數學習

LoadRunner 函數學習

char* num erro bsp 支持 file 版本 mit 加載

(常用函數 一)

1. Intweb_reg_save_param("參數名","LB=左邊界","RB=右邊界",LAST);/註冊函數,在參數值出現的前面使用,註冊成功時返回值為0,註冊失敗時返回值為1。左右邊界需根據TreeView裏相關步驟的SeverResponse代碼來確定。用以上函數能獲取第一個符合條件的數值。

2. web_reg_save_param("參數名”,"LB=左邊界”,"RB=右邊界","Ord=All",LAST);/當參數有多個值時,加上"Ord=All”後可獲取所有的數值。註冊成功後,{參數名_count}表示取得的數值個數,{參數名_1}為第一個數值,{參數名_2}為第二個數值。

3. lr_save_string(“字符串變量”,"參數名")/將字符變量裏的值傳遞給指定參數。通過該函數來改變DataFile類型參數的數值。

4. lr_eval_string("{參數名}")/取得參數的數值。可取得已註冊參數或DataFile類型參數的數值。eval就是evaluation(估價,評價,賦值)的縮寫。

5. int sprintf(char * string , const char*format_string[,args]);/字符串賦值函數

Action()

{

int index=56;

charfilename[64],*suffix="txt";

sprintf(filename,"log_%d.%s",index,suffix);

lr_output_message("Thenewfilenameis%s",filename);

return 0;

}

Output:Thenewfilenameislog_56.txt

6. char*strcat(char*to,constchar*from);/將一字符串追加到另一字符串後面

函數名 介紹
strcat 連接兩個字符串
strchr 返回字符串第一次出現後的所有字符
strcmp 區分大小寫字母比較
strcpy 復制一個字符串到另一個
strdup 復制字符串
stricmp 不區分大小寫字母比較
strlen 返回字符串長度
strlwr 轉化字符串為小寫字母
strncat 一個字符串連接另一個字符串到第n個的字符
strncmp 比較兩個字符串從第一到n個字符
strncpy 復制一個字符串從第一到n個字符到另一個字符串
strnicmp 比較兩個字符串的n個字符
strrchr 返回字符最後出現後的所有字符
strset 為字符串填充特殊字符
strspn 返回字符串中包含特殊字符的個數
strstr 返回一個字符串在另一個中第一出現的位置數
strtok 返回特殊標記分割的字符
strupr 轉化字符串為大小字母

//字符串復制
strcpy(str,"Hello ") ;
//字符串連接
strcat(str,"World !");
lr_message("str: %s",str);
//變量轉為參數,將變量str的值存到參數Param中
lr_save_string(str,"Param");
//參數復制
lr_save_string(lr_eval_string("{Param}"),"Param_1");
//參數轉為變量
strcpy(str1,lr_eval_string("{Param_1}"));
lr_message("str1: %s",str1);
//參數名稱格式化輸出到變量中
sprintf(str2,"{Param_%d}",1);
lr_message("str2: %s",lr_eval_string(str2));

7. web_find("find_time","What=2006-03-0118:21:16.882",LAST);/增加檢查點,檢查“2006-03-0118:21:16.882”這個字符串是否出現在當前頁面上。find_time為自己任意輸入的檢查點名稱。

8. 事務函數

lr_end_sub_transaction/標記子事務的結束以便進行性能分析

lr_end_transaction/標記LoadRunner事務的結束

lr_end_transaction_instance/標記事務實例的結束以便進行性能分析

lr_fail_trans_with_error/將打開事務的狀態設置為LR_FAIL並發送錯誤消息

lr_get_trans_instance_duration/獲取事務實例的持續時間(由它的句柄指定)

lr_get_trans_instance_wasted_time/獲取事務實例浪費的時間(由它的句柄指定)

lr_get_transaction_duration/獲取事務的持續時間(按事務的名稱)

lr_get_transaction_think_time/獲取事務的思考時間(按事務的名稱)

lr_get_transaction_wasted_time/獲取事務浪費的時間(按事務的名稱)

lr_resume_transaction/繼續收集事務數據以便進行性能分析

lr_resume_transaction_instance/繼續收集事務實例數據以便進行性能分析

lr_set_transaction_instance_status/設置事務實例的狀態

lr_set_transaction_status/設置打開事務的狀態

lr_set_transaction_status_by_name/設置事務的狀態

lr_start_sub_transaction/標記子事務的開始

lr_start_transaction/標記事務的開始

lr_start_transaction_instance/啟動嵌套事務(由它的父事務的句柄指定)

lr_stop_transaction/停止事務數據的收集

lr_stop_transaction_instance/停止事務(由它的句柄指定)數據的收集

lr_wasted_time/消除所有打開事務浪費的時間

lr_end_sub_transaction/標記子事務的結束以便進行性能分析

r_end_transaction/標記LoadRunner事務的結束

lr_end_transaction_instance/標記事務實例的結束以便進行性能分析

lr_fail_trans_with_error/將打開事務的狀態設置為LR_FAIL並

9. 命令行分析函數

lr_get_attrib_double/檢索腳本命令行中使用的double類型變量

lr_get_attrib_long/檢索腳本命令行中使用的long類型變量

lr_get_attrib_string/檢索腳本命令行中使用的字符串

10. 信息性函數

lr_user_data_point/記錄用戶定義的數據示例

lr_whoami/將有關Vuser腳本的信息返回給Vuser腳本

lr_get_host_name/返回執行Vuser腳本的主機名

lr_get_master_host_name/返回運行LoadRunnerController的計算機名

11. 字符串函數

lr_eval_string/用參數的當前值替換參數

lr_save_string/將以NULL結尾的字符串保存到參數中

lr_save_var/將變長字符串保存到參數中

lr_save_datetime/將當前日期和時間保存到參數中

web_save_timestamp_param("tStamp", LAST);//獲取時間戳,並存到tStamp這個參數中備用

lr_advance_param/前進到下一個可用參數

lr_decrypt/解密已編碼的字符串

lr_eval_string_ext/檢索指向包含參數數據的緩沖區的指針

lr_eval_string_ext_free/釋放由lr_eval_string_ext分配的指針

lr_save_searched_string/在緩沖區中搜索字符串實例,並相對於該字符串實例,該緩沖區的一部分保存到參數中

12. 消息函數

lr_debug_message/將調試消息發送到輸出窗口

lr_error_message/將錯誤消息發送到輸出窗口

lr_get_debug_message/檢索當前的消息類

lr_log_message/將輸出消息直接發送到output.txt文件,此文件位於Vuser腳本目錄中。該函數有助於防止輸出消息幹擾TCP/IP通信。

lr_output_message/將消息發送到輸出窗口

lr_set_debug_message/為輸出消息設置消息類

lr_vuser_status_message/生成格式化輸出並將其打印到ControllerVuser狀態區域。

lr_message/將消息發送到Vuser日誌和輸出窗口

13. 操作函數

web_custom_request允許您使用HTTP支持的任何方法來創建自定義HTTP請求
web_image在定義的圖像上模擬鼠標單擊
web_link在定義的文本鏈接上模擬鼠標單擊
web_submit_data執行“無條件”或“無上下文”的表單
web_submit_form模擬表單的提交
web_url加載由“URL”屬性指定的URL

14. 身份驗證函數

身份驗證函數web_set_certificate使Vuser使用在InternetExplorer註冊表中列出的特定證書
身份驗證函數web_set_certificate_ex指定證書和密鑰文件的位置和格式信息
身份驗證函數web_set_user指定Web服務器的登錄字符串和密碼,用於Web服務器上已驗證用戶身份的區域

15. 緩存函數

緩存函數web_cache_cleanup清除緩存模擬程序的內容

16. 檢查函數

檢查函數web_find在HTML頁內搜索指定的文本字符串
檢查函數web_global_verification在所有後面的HTTP請求中搜索文本字符串
檢查函數web_image_check驗證指定的圖像是否存在於HTML頁內
檢查函數web_reg_find在後面的HTTP請求中註冊對HTML源或原始緩沖區中文本字符串的搜索

17. 連接定義函數

連接定義函數web_disable_keep_alive禁用Keep-AliveHTTP連接
連接定義函數web_enable_keep_alive啟用Keep-AliveHTTP連接
連接定義函數web_set_connections_limit設置Vuser在運行腳本時可以同時打開連接的最大數目

18. 並發組

web_concurrent_end標記並發組的結束
web_concurrent_start標記並發組的開始

19. cook函數

web_add_cookie添加新的Cookie或修改現有的Cookie
web_cleanup_cookies刪除當前由Vuser存儲的所有Cookie
web_remove_cookie刪除指定的Cookie

20. 關聯函數

web_create_html_param將HTML頁上的動態信息保存到參數中。(LR6.5及更低版本)
web_create_html_param_ex基於包含在HTML頁內的動態信息創建參數(使用嵌入邊界)(LR6.5及更低版本)。

(常用函數 二)

基礎篇1:LoadRunner中常用函數參考手冊

常用函數列表 web_url web_submmit_form VS web_submmit_data VS web_custom_request web_custom_request web_concurrent_start(NULL); web_concurrent_end(NULL); ============================分割線================================ 1. web_url  Loads the specified Web page (GET request). Web_url根據函數中的URL屬性加載對應的URL,不需要上下文。 2. web_submmit_form VS web_submmit_data VS web_custom_request web_submit_form: Submit a form,此函數可能必須在前一個操作的上下文中執行。 web_submit_data: Performs an "unconditional" or "contextless" form submission. web_submit_data函數處理無狀態或者上下文無關的表單提交。它用來生成表單的GET或POST請求,這些請求與Form自動生成的請求是一樣的。 當VuGen設為基於URL的錄制模式,或者基於HTML的錄制方式但是 Recording Options—HTML Advanced 下的A script containing explicit URLs only 選項被選中時,web_submmit_data函數才會錄制到。 其他情景,如果 在Recording Options—HTML Advanced下選中 A script describing user actions,則啟用web_submit_form 不論你采用URL查詢的方式(GET),還是采用請求體發送(POST)的方式,此函數都指示出Form中的數據是如何發送到服務器的。 如果VuGen處於HTTP錄制模式下,此時記錄Web進程時,會產生此函數。在提交 Form時,如果無法生成web_submit_form函數,VuGen也會生成web_submit_data函數。 3. web_custom_request Allows you to create a custom HTTP request with any method supported by HTTP. //Input email address and password web_custom_request("LoginEXAMPLE", "URL=https://www.EXAMPLE.com/$WS$/Services/Accounts.svc/Accounts/Login/", "Method=POST", "Resource=0", "RecContentType=application/json", "Referer=https://www.EXAMPLE.com/us#",//當前頁面關聯的頁面。如果已經顯式指定了url的地址,此項可以省略。 "Snapshot=t13.inf", //快照的文件名,關聯時使用。 "Mode=HTTP", "EncType=application/json;charset=utf-8", //URL可以是絕對路徑(例如http://weather.abc.com /weather/forecast.jsp?locCode=LFPO),也可以是相對路徑(例如 “forecast.jsp?locCode=LFPO”)。 "Body={"EmailAddress":"[email protected]","AuthTicket":"1305389607236.5E4A6746B561B0EB59EB6C3D599A646AF5E034A049510EAAC081D7FC488E8AEED5AE2D9A8688311F3A1E4F277D2CEDCB6059AAC4BC1460645FC08360C24654F1"}", //Body(目前僅適用與web_custom_request函數):請求體。 LAST); 此示例中, 指定的URL如何處理body請求體中的內容,待以後再討論。 Resource:指示URL是否屬於資源。1 是;0 不是。設置了這個參數後,RecContentType參數被忽略。“Resource=1”,意味著當前操作與所在腳本的成功與否關系不大。在下載資源時如果發生錯誤,是當作警告而不是錯誤來處理的;URL是否被下載受“Run-Time Setting—Browser Emulation--Download non-HTML resources” 這個選項的影響。此操作的響應信息是不做為HTML來解析的。“Resource=0”,表明此URL是重要的,不受發送請求(RTS)的影響,在需要時也會解析它。 Mode:兩種錄制級別HTML、HTTP。 HTML級別:在當前Web界面上錄制直觀的HTML動作。以一步步的web_url、 web_link、web_image、web_submit_form來錄制這些動作。VuGen僅僅錄制返回HTML頁面的請求,不處理腳本和應用程序。 HTTP級別:VuGen把所有的請求錄制為web_url指令,不生成 web_link、web_image、web_submit_form這些函數。這種方法更為靈活,但是生成的腳本不夠直觀。 4. web_concurrent_start(NULL); web_concurrent_end(NULL); web_concurrent_start函數是並發組開始的標記。組中所有的函數是並發執行的。 並發組的結束web_concurrent_end函數。 在並發組中,可以包含的函數有:web_url、web_submit_data、web_custom_request、web_create_html_param、web_create_html_param_ex、web_reg_save_param、web_add_header。 在並發組中的函數不是立即執行的。 在並發組開始時,所有的函數首先被記錄下來,當並發組結束時,所有的函數並發執行。 (其他函數 三) https://wenku.baidu.com/view/2bed822478563c1ec5da50e2524de518964bd3d4.html

LoadRunner 函數學習