一、基本步驟
創(chuàng)建腳本:在 Loadrunner 的 Controller 模塊中,創(chuàng)建一個新的測試腳本。您可以選擇錄制腳本或手動編寫腳本疚顷。
添加業(yè)務場景:在腳本中添加業(yè)務場景髓迎,如登錄峦朗、購物車、下單排龄、支付等波势,模擬用戶行為。
參數(shù)化:在腳本中使用參數(shù)化技術橄维,將一些動態(tài)值(如用戶名尺铣、密碼、訂單號等)替換成參數(shù)争舞,以便在運行時方便修改凛忿。
添加斷言:在腳本中添加斷言,檢查每個業(yè)務場景執(zhí)行后的返回結果竞川,確保程序的正確性店溢。
添加事務:在腳本中添加事務,用來度量每個業(yè)務場景的響應時間和吞吐量委乌。
調試腳本:使用 Loadrunner 的 Debug 模式調試腳本床牧,檢查是否存在邏輯錯誤或腳本語法錯誤,以保證腳本的正確性遭贸。
配置 Vuser 數(shù)量:根據(jù)需要模擬的用戶數(shù)量戈咳,配置 Vuser 數(shù)量,并設置 Vuser 的獨立運行配置壕吹。
運行和分析腳本:使用 Loadrunner 的 Controller 模塊除秀,啟動測試過程,等待測試完成后算利,使用
Loadrunner 的 Analysis 模塊進行結果分析和報告生成册踩。
總的來說,編寫 Loadrunner 腳本需要熟悉腳本語言效拭、業(yè)務場景暂吉、參數(shù)化技術、斷言和事務等基礎知識缎患。在實際編寫時慕的,可以根據(jù)具體測試需求,結合實際情況進行合理的配置和調整挤渔。
二肮街、腳本編寫
Action()
{
char *username, *password;
lr_start_transaction("login");
// 參數(shù)化用戶名和密碼
username = lr_eval_string("{pUsername}");
password = lr_eval_string("{pPassword}");
// 打開主頁
web_url("homepage",
"URL=http://www.example.com/",
"Resource=0",
"RecContentType=text/html",
"Mode=HTML",
LAST);
// 單擊登錄鏈接
web_link("login_link",
"Text=Login",
"Snapshot=t1.inf",
LAST);
// 提交憑證
web_submit_form("login_form",
"Snapshot=t2.inf",
ITEMDATA,
"User ID={pUsername}",
"Password={pPassword}",
"Submit=Login",
LAST);
// 添加日志語句和斷言
lr_output_message("Logged in with username='%s' and password='%s'", username, password);
lr_end_transaction("login", LR_AUTO);
// 處理錯誤
if (strstr(lr_eval_string("{ResponseURL}"), "error")) {
lr_fail_trans_with_error("Login failed: incorrect username or password");
}
return 0;
}
- 需要使用虛擬用戶模擬多個用戶同時進行登錄操作。
- 使用參數(shù)化來模擬不同的用戶名和密碼組合判导,以便在每個迭代中測試不同的憑證嫉父。
- 通過添加日志語句沛硅、斷言和錯誤處理來確保正常的用戶流程并記錄每個操作的響應時間。
三绕辖、總結
該腳本使用 {pUsername} 和 {pPassword} 參數(shù)來模擬不同的憑證摇肌,并使用 lr_eval_string() 函數(shù)從參數(shù)文件中獲取這些值。在每次迭代中仪际,這些參數(shù)會自動更新围小,以便測試不同的憑證。
該腳本還使用 lr_output_message() 函數(shù)添加日志語句树碱,記錄每次登錄的用戶名和密碼肯适,以及 lr_fail_trans_with_error() 函數(shù)來處理錯誤情況,例如登錄失敗成榜。
最后疹娶,該腳本還包括事務開頭和結尾的 lr_start_transaction() 和 lr_end_transaction() 函數(shù),以記錄每個事務的響應時間伦连。