軟件測(cè)試工具中LOADRUNNER 登陸功能測(cè)試實(shí)例_第1頁(yè)
軟件測(cè)試工具中LOADRUNNER 登陸功能測(cè)試實(shí)例_第2頁(yè)
軟件測(cè)試工具中LOADRUNNER 登陸功能測(cè)試實(shí)例_第3頁(yè)
軟件測(cè)試工具中LOADRUNNER 登陸功能測(cè)試實(shí)例_第4頁(yè)
軟件測(cè)試工具中LOADRUNNER 登陸功能測(cè)試實(shí)例_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第第頁(yè)軟件測(cè)試工具中LOADRUNNER登陸功能測(cè)試實(shí)例軟件測(cè)試工具中LOADRUNNER登陸功能測(cè)試實(shí)例

發(fā)表于:2023-12-24來源::點(diǎn)擊數(shù):標(biāo)簽:軟件測(cè)試用戶名時(shí)間

軟件測(cè)試中LOADRUNNER登陸功能測(cè)試實(shí)例LoadRunner,是一種預(yù)測(cè)系統(tǒng)行為和性能的負(fù)載測(cè)試工具。通過以模擬上千萬(wàn)用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測(cè)的方式來確認(rèn)和查找問題,LoadRunner能夠?qū)φ麄€(gè)企業(yè)架構(gòu)進(jìn)行測(cè)試。通過使用LoadRunner,企業(yè)能最大限度

軟件測(cè)試中LOADRUNNER登陸功能測(cè)試實(shí)例

LoadRunner,是一種預(yù)測(cè)系統(tǒng)行為和性能的負(fù)載測(cè)試工具。通過以模擬上千萬(wàn)用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測(cè)的方式來確認(rèn)和查找問題,LoadRunner能夠?qū)φ麄€(gè)企業(yè)架構(gòu)進(jìn)行測(cè)試。通過使用LoadRunner,企業(yè)能最大限度地縮短測(cè)試時(shí)間,優(yōu)化性能和加速應(yīng)用系統(tǒng)的發(fā)布周期。LoadRunner是一種適用于各種體系架構(gòu)的自動(dòng)負(fù)載測(cè)試工具,它能預(yù)測(cè)系統(tǒng)行為并優(yōu)化系統(tǒng)性能。

本文中我將介紹LOADRUNNER對(duì)事務(wù)操作的幾個(gè)函數(shù),并通過一個(gè)例子,說明LOADRUNNER中事務(wù)是否成功是如何判斷的,同時(shí)也介紹如何判斷在腳本執(zhí)行過程中腳本是否真實(shí)的執(zhí)行成功。

1.先問個(gè)問題,我們帶著問題繼續(xù)

錄制一個(gè)登陸腳本,對(duì)登陸用戶和密碼進(jìn)行參數(shù)化,使前2個(gè)用戶名正確,第三個(gè)用戶名錯(cuò)誤,設(shè)置腳本迭代3次,分別使用第一個(gè)、第二個(gè)、第三個(gè)用戶登陸,此時(shí)在腳本中對(duì)登陸的提交操作加一個(gè)事務(wù)TR_LOGIN,現(xiàn)在提出問題:運(yùn)行腳本時(shí)

第一個(gè)用戶登陸成功,事務(wù)TR_LOGIN是否成功?

第二個(gè)用戶登陸成功,事務(wù)TR_LOGIN是否成功?

第三個(gè)用戶登陸失敗,事務(wù)TR_LOGIN是否成功?

答案是:TR_LOGIN事務(wù)三次執(zhí)行時(shí)均成功

那有人會(huì)問,登陸失敗為什么事務(wù)成功?我們一起來看下面的例子,相信在做過例子后就會(huì)得到答案!

我這個(gè)例子錄制的是LOADRUNNER自帶的mercuryWebTours

錄制方法在這里就不介紹了,錄制完成并對(duì)用戶名和密碼參數(shù)化后的腳本如下:(參數(shù)化時(shí)其中第三個(gè)用戶名是錯(cuò)誤的)

Action()

{

doubletrans_time;

intstatus;

web_url("mercuryWebTours",

"URL=:1080/mercuryWebTours/",

"Resource=0",

"RecContentType=text/html",

"Referer=",

"Snapshot=t1.inf",

"Mode=HTML",

LAST);

lr_start_transaction("tr_login");

trans_time=lr_get_transaction_duration("tr_login");

//lr_get_transaction_duration這個(gè)函數(shù)可以得到事務(wù)執(zhí)行所消耗的時(shí)間

web_reg_find("Text=Error",

"SaveCount=login_Count",LAST);

//web_reg_find這個(gè)函數(shù)可以在相應(yīng)的范圍內(nèi)找到要找的內(nèi)容,和檢查點(diǎn)類似,但這個(gè)函數(shù)被WEB_FIND多一個(gè)參數(shù)返回結(jié)果,那就是savecount這個(gè)值可以記錄在指定范圍內(nèi)找到指定內(nèi)容的個(gè)數(shù),這個(gè)例子中我們就是通過這個(gè)值來判斷用戶是否真正的登陸成功

//說明:在登陸失敗后,登陸頁(yè)面會(huì)有一個(gè)“ERROR”的字符串,所以我們認(rèn)為如果出現(xiàn)該字符串代表登陸失敗,這個(gè)判斷登陸成功或失敗的條件,根據(jù)具體的項(xiàng)目不同而不同,根據(jù)實(shí)際情況而定

status=web_submit_form("login.pl",

"Snapshot=t2.inf",

ITEMDATA,

"Name=username","Value={name}",ENDITEM,

"Name=password","Value={password}",ENDITEM,

"Name=login.x","Value=51",ENDITEM,

"Name=login.y","Value=12",ENDITEM,

LAST);

//我們把web_submit_form函數(shù)執(zhí)行的結(jié)果賦給status這個(gè)變量,如果成功返回0,不成功返回大于0的數(shù)

if(status==0)//如果成功

lr_end_transaction("tr_login",LR_PASS);//如果提交成功,設(shè)置事務(wù)狀態(tài)為PASS

else

lr_end_transaction("tr_login",LR_FAIL);//如果提交失敗,設(shè)置事務(wù)狀態(tài)為FAIL

if(trans_time)//如果該事務(wù)消耗了時(shí)間輸出該時(shí)間

lr_output_message("tr_login事務(wù)耗時(shí)%f秒",trans_time);

else//如果該事務(wù)沒有消耗時(shí)間,那么輸出時(shí)間不確定

lr_output_message("Thedurationcannotbedetermined.");

if(atoi(lr_eval_string("{login_Count}"))0){

//如果在登陸后的頁(yè)面中找到“ERROR”這個(gè)字符串,我們認(rèn)為登陸失敗

lr_error_message("Loginfailed");

}

else{

//否則登陸成功

lr_output_message("Loginsuclearcase/"target="_blank">ccessful.");

return(0);

}

return0;

}

好了,

執(zhí)行這個(gè)腳本,得到的結(jié)果是:

第一次迭代時(shí):(在這里只粘貼了一部分關(guān)鍵的日志)

Action.c(15):Notify:Transaction"tr_login"started.

Action.c(17):Registeringweb_reg_findwassuccessful[MsgId:MMSG-26390]

Action.c(20):Notify:ParameterSubstitution:parameter"name"="huruihai"

Action.c(20):Notify:ParameterSubstitution:parameter"password"="huruihai"

Action.c(20):Registeredweb_reg_findsuccessfulfor"Text=Error"[MsgId:MMSG-26362]

Action.c(20):Notify:SavingParameter"login_Count=0"

Action.c(20):web_submit_form("login.pl")wassuccessful,32673bodybytes,1652headerbytes[MsgId:MMSG-26386]

Action.c(30):Notify:Transaction"tr_login"endedwith"Pass"status

Action.c(35):login事務(wù)耗時(shí)0.002523秒

Action.c(39):Notify:ParameterSubstitution:parameter"login_Count"="0"

Action.c(44):Loginsuccessful.

第二次迭代時(shí):

Action.c(15):Notify:Transaction"tr_login"started.

Action.c(17):Registeringweb_reg_findwassuccessful[MsgId:MMSG-26390]

Action.c(20):Notify:ParameterSubstitution:parameter"name"="wangjin"

Action.c(20):Notify:ParameterSubstitution:parameter"password"="wangjin"

Action.c(20):Registeredweb_reg_findsuccessfulfor"Text=Error"[MsgId:MMSG-26362]

Action.c(20):Notify:SavingParameter"login_Count=0"

Action.c(20):web_submit_form("login.pl")wassuccessful,32673bodybytes,1652headerbytes[MsgId:MMSG-26386]

Action.c(30):Notify:Transaction"tr_login"endedwith"Pass"status

Action.c(35):login事務(wù)耗時(shí)0.006644秒

Action.c(39):Notify:ParameterSubstitution:parameter"login_Count"="0"

Action.c(44):Loginsuccessful.

第三次迭代時(shí):

Action.c(15):Notify:Transaction"tr_login"started.

Action.c(17):Registeringweb_reg_findwassuccessful[MsgId:MMSG-26390]

Action.c(20):Notify:ParameterSubstitution:parameter"name"="errorname"

Action.c(20):Notify:ParameterSubstitution:parameter"password"="errorpd"

Action.c(20):Registeredweb_reg_findsuccessfulfor"Text=Error"(count=3)[MsgId:MMSG-26364]

Action.c(20):Notify:SavingParameter"login_Count=3"

Action.c(20):web_submit_form("login.pl")wassuccessful,29263bodybytes,821headerbytes[MsgId:MMSG-26386]

Action.c(30):Notify:Transaction"tr_login"endedwith"Pass"status(Duration:0.6840WastedTime:0.0010).

Action.c(35

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論