2.一個規范的性能測試腳本就像一段規范的程序代碼一樣,需要基本的說明信息:
在下面要介紹的腳本中,我把這些信息以注釋的形式放在vuser_init最前面:
/*
@corporation:Copyright By *** Technologies CO.,LTD. All Rights Reserved.
@Athour:XuLinLin
@Date:2005-09-18
@Name:異地繳費壓力測試腳本
@Parameter:BOSSURL,LogName,PhoneNum,iteration,FanHui
@Data:BOSSURL:BOSSURL.dat; //由于BOSS壓力測試前臺展現環境多,故將地址也參數化。
LogName:LogName.dat; //登錄用操作員,選擇具備異地繳費權限的操作員,這里選擇的是德州操作員300個。
PhoneNum:PhoneNum.dat; //用于異地繳費的服務號碼,這里選擇的是煙臺的正常在用的標準全球通號碼3000個。
iteration:iteration.dat; //用于壓力測試出錯時,打印出錯所在的循環次數。
@Descrīption:此腳本用于測試異地繳費的性能及穩定性,選用德州的操作員對煙臺的標準全球通號碼進行異地繳費,目標是
通過vuser模仿真實操作員進行異地繳費,達到驗證或測試系統性能和穩定性的目的。
@Notes:腳本的錄制使用的是LoadRunner8.0的VU,采用的是URL-based scrīpt方式,需要特別注意的是Recording Options(按Ctrl+F7)
的Advanced 選項里的Surport Charset一般情況默認為不選,除非字符集合采用的是國際標準才選中UTF-8選項,否則會出現漢字亂碼現象。
*/
3.通常情況下,任何業務必須在登陸成功后才能做,所以有必要對登陸成功與否進行判斷:
下面我從腳本中取出相關部分進行簡單介紹:
vuser_init()
{
int status; //定義變量用于判斷登陸是否成功
web_reg_find("Text=山東移動BOSS",
LAST);
…….
…….
web_submit_data("reguserAction.do", //登陸提交數據Action。
"Action=http://{BOSSURL}/boss/reguserAction.do",
"Method=POST",
"RecContentType=text/html",
"Referer=http://{BOSSURL}/boss/index.jsp",
"Snapshot=t12.inf",
"Mode=HTTP",
ITEMDATA,
"Name=logname", "Value={LogName}", ENDITEM,
"Name=password", "Value=", ENDITEM,
LAST);
status = web_submit_data("reguserAction.do", // 取成功與否標志
"Action=http://{BOSSURL}/boss/reguserAction.do",
"Method=POST",
"RecContentType=text/html",
"Referer=http://{BOSSURL}/boss/index.jsp",
"Snapshot=t12.inf",
"Mode=HTTP",
ITEMDATA,
"Name=logname", "Value={LogName}", ENDITEM,
"Name=password", "Value=", ENDITEM,
LAST);
if (status == LR_FAIL) //一旦登陸失敗,腳本給出提示報錯信息。
{
lr_error_message("錯誤信息: %s", "不能正常登陸!");
return -1;
}
}
原文轉自:http://www.anti-gravitydesign.com