lr對事務狀態的跟蹤
2008-12-26 13:51:52
分類: 專案管理
loadrunner對事務操作的幾個函式,並通過乙個例子,說明loadrunner中事務是否成功是如何判斷的,同時也介紹如何判斷在指令碼執行過程中指令碼是否真實的執行成功。
.先問個問題,我們帶著問題繼續
錄製乙個登陸指令碼,對登陸使用者和密碼進行引數化,使前2個使用者名稱正確,第三個使用者名稱錯誤,設定指令碼迭代3次,分別使用第乙個、第二個、第三個使用者登陸,此時在指令碼中對登陸的提交操作加乙個事務tr_login,現在提出問題:執行指令碼時
第乙個使用者登陸成功,事務tr_login是否成功?
第二個使用者登陸成功,事務tr_login是否成功?
第三個使用者登陸失敗,事務tr_login是否成功?
答案是:tr_login事務三次執行時均成功
那有人會問,登陸失敗為什麼事務成功?我們一起來看下面的例子,相信在做過例子後就會得到答案!
我這個例子錄製的是loadrunner自帶的mercurywebtours
錄製完成並對使用者名稱和密碼引數化後的指令碼如下:(引數化時其中第三個使用者名稱是錯誤的,**如下)
action()
", enditem,
"name=password"
,"value="
, enditem,
"name=login.x"
,"value=46"
, enditem,
"name=login.y"
,"value=7"
, enditem,
last);
if(status
== 0)
//如果成功
lr_end_transaction(
"login"
, lr_pass)
;//如果提交成功,設定事務狀態為pass
else
lr_end_transaction(
"login"
, lr_fail)
;//如果提交失敗,設定事務狀態為fail
if(trans_time)
//如果該事務消耗了時間輸出該時間
lr_output_message(
"tr_login事務耗時 %f 秒"
, trans_time)
;else
//如果該事務沒有消耗時間,那麼輸出時間不確定
lr_output_message(
"the duration cannot be determined.");
if(atoi(lr_eval_string("")
)> 0)
else
web_image(
"signoff button"
,"alt=signoff button"
,"snapshot=t3.inf"
,last);
lr_end_transaction(
"login"
, lr_auto)
;return 0;
}
lr message函式分析
「lr_message」
int lr_message (const char *format, exp1, exp2,……expn.);中文解釋:lr_message函式將資訊傳送到日誌檔案和輸入視窗。在vugen中執行時,輸入檔案為output.txt.「lr_log_message」
int lr_log_message (const char *format, exp1, exp2,……expn.);中文解釋:lr_log_message函式將訊息傳送到vuser或**日誌檔案(取決於應用程式),而不是傳送到輸出視窗。通過向日誌檔案傳送錯誤訊息或其他資訊性訊息,可以將該函式用於除錯。
「lr_error_message」
int lr_error_message (const char *format, exp1, exp2,……expn. );中文解釋:lr_error_message函式將錯誤訊息傳送到輸出視窗和vuser日誌檔案。要傳送不是特定錯誤訊息的特殊通知,請使用lr_output_message.「lr_output_message」
int lr_output_message (const char *format, exp1, exp2,……expn.);中文解釋:lr_output_message函式將帶有指令碼部分的行號的訊息傳送到輸出視窗和日誌檔案。
對事務的認知
對事務的認知有時候是這樣的,不去深接觸,總以為自己通了,知曉了,但是當你真真正正想去了解,接觸時,才發現原來自己並不自己想的那樣。自己並不了解,一切都得從頭開始,去了解,去學習。知道這些是在自己開始做專業開發的時候,原本以為學懂了許多,但是事實並不是這樣。自己的學識離學懂還有很遠的距離啊!在這過程中...
對事務的理解
事務 transaction 是訪問並可能更新資料庫中各種資料項的乙個程式執行單元.事務的四個屬性 原子性atomicity 乙個事務是乙個不可分割的工作單位,事務中包括的諸操作要麼都做,要麼都不做.一致性consistency 事務必須是使資料庫從乙個一致性狀態到另乙個一致性狀態.一致性與原子性是...
對事務的理解
事務 為了實現某個功能而組合在一起的一組sql語句,這組sql語句要麼全執行,要麼全不執行 例 張三要給李四轉100塊錢,那麼如果轉錢成功的話,張三的賬戶會少100,而李四的賬戶會多100 否則張三和李四的賬戶餘額仍保持不變。事務有四大特性 簡稱為acid特性 原子性 atomicity 一致性 c...