4.事務的定義,很簡單,也很有必要,盡量是每個定義的事物符合邏輯和小。
在下面的腳本中,在異地繳費這一業務中定義了兩個Transaction:準備異地繳費數據和提交異地繳費,見如下腳本代碼:
lr_start_transaction("準備異地繳費數據");
web_set_max_html_param_len("4096");
……….
web_submit_data("chargeacc.do",
"Action=http://{BOSSURL}/boss/charge/commonbusiness/acccharge/chargeacc.do?act=queryaccount",
"Method=POST",
"RecContentType=text/html",
"Referer=http://{BOSSURL}/boss/charge/commonbusiness/acccharge/acccharge.jsp?act=first",
"Snapshot=t74.inf",
"Mode=HTTP",
ITEMDATA,
"Name=isconfirm", "Value=no", ENDITEM,
"Name=chargetype", "Value=telnumber", ENDITEM,
"Name=telnumber", "Value={PhoneNum}", ENDITEM,
"Name=nowfee", "Value=0.0", ENDITEM,
"Name=factfee", "Value=", ENDITEM,
"Name=totalfee", "Value=0.0", ENDITEM,
LAST);
lr_end_transaction("準備異地繳費數據", LR_AUTO);
5.增強腳本,對腳本進行簡單的編程。
增強腳本,對腳本進行簡單的編程,為性能或壓力測試提供方便,這也是寫
本文的宗旨,下面對此做簡單的介紹:
5.1首先,定義成功與否的判斷標志或字符串。
在此,我把判斷成功與否的標志定義在異地繳費Action 最前面,具體定義如下:char fanhuiflag[30]="操作業務數據成功!";
但是大家可能會問,字符串"操作業務數據成功!"從何處而來,可以肯定的不能憑空想象,成功標志可從兩三種方式來取得:
第一種:也是最簡單的一種,直接從腳本中取得,具體操作是以View Tree 方式找到相關的界面,然后從Server Response的Snapshot的Body里去取。見下面的圖片:
注:Snapshot在錄制前要將Recording Options>Advanced里的Save snapshot resources locally 選項選中。
第二種方式,從腳本代碼中去取,即取find函數中相關字符串,具體做法是,找到在提交事件前的web_reg_find函數,然后從中取相關字符串。
web_reg_find("Text=---------操作業務數據成功!--------",
LAST);
值得注意的是要有web_reg_find函數,可以在錄制前選中Recording Options>Advanced里的Generate web_reg_find functions for page titles 選項。
第三種方式,從本地的snapshot里去取,具體操作,首先找到提交數據事件相關腳本,找到snapshot文件的名稱,然后從本地的data文件里去找這個snapshot文件,然后叢中找到我們需要的字符串。
web_reg_find("Text=---------操作業務數據成功!--------",
LAST);
…….
web_submit_data("chargeacc.do_3",
"Action=http://{BOSSURL}/boss/charge/commonbusiness/acccharge/chargeacc.do?act=submit&atype=commitdata",
"Method=POST",
"RecContentType=text/html",
"Referer=http://{BOSSURL}/boss/charge/commonbusiness/acccharge/chargeacc.do?act=querycustomer",
"Snapshot=t129.inf",
"Mode=HTTP",
ITEMDATA,
"Name=isconfirm", "Value=no", ENDITEM,
"Name=chargetype", "Value=telnumber", ENDITEM,
"Name=telnumber", "Value=", ENDITEM,
"Name=nowfee", "Value=8.8", ENDITEM,
"Name=factfee", "Value=0.00", ENDITEM,
"Name=totalfee", "Value=8.8", ENDITEM,
"Name=accountno", "Value={WCSParam_Diff1}", ENDITEM,
"Name=factpay", "Value=8.8", ENDITEM,
"Name=grantpercent", "Value=", ENDITEM,
"Name=grantfee", "Value=0", ENDITEM,
"Name=takecash", "Value=8.8", ENDITEM,
"Name=zero", "Value=0", ENDITEM,
"Name=paytype", "Value=Cash", ENDITEM,
"Name=remark", "Value=", ENDITEM,
"Name=invoice", "Value=joininvoice", ENDITEM,
LAST);
文章來源于領測軟件測試網 http://www.kjueaiud.com/