摘要: 介紹如何通過響應(yīng)報文判斷交易的處理情況 閱讀全文
摘要: 相信有不少人在使用LoadRunner的過程中都遇到過這樣的問題:在錄制下來的腳本的中文信息出現(xiàn)了亂碼。如何解決這個問題呢?希望這篇文章能夠給你帶來一些幫助和啟發(fā)。 閱讀全文
摘要: 本文介紹了在LR中使用自定義請求報文向服務(wù)器發(fā)送請求的方法 閱讀全文
摘要: 眾所周知,在LoadRunner中,關(guān)聯(lián)是一個很重要的動作,大多數(shù)的腳本在錄制完成后并不能直接回放,需要通過一定的關(guān)聯(lián)才能成功回放。關(guān)聯(lián)的技巧有很多,這里介紹的就是其中之一 閱讀全文
在LR中,關(guān)聯(lián)函數(shù)web_reg_save_param的NotFound參數(shù)有兩個選項,含義分別如下:
ERROR:當(dāng)關(guān)聯(lián)函數(shù)未能找到匹配值時,LR將拋出一個Error信息;
EMPTY:當(dāng)關(guān)聯(lián)函數(shù)未能找到匹配值時,LR將空值賦給該關(guān)聯(lián)的參數(shù)值。默認(rèn)情況下,該值為Error,在大多數(shù)情況下,這是可以滿足要求的。然而在某些時候,我們可能需要利用關(guān)聯(lián)值做一些條件判斷,例如設(shè)定當(dāng)關(guān)聯(lián)到的值為空時,讓腳本做一些特殊處理,此時如果使用默認(rèn)的選項就不合適了,因為當(dāng)LR識別到該關(guān)聯(lián)值為空時,將拋出一個錯誤信息,提示未找到關(guān)聯(lián)記錄。怎么辦呢?此時就可以使用NotFound的另外一個選項,即將NotFound參數(shù)值設(shè)為Empty,
例:
web_reg_save_param("customer","LB=name=\"classiAssetsSelected\" value=\"","RB=\"","NotFound=EMPTY",LAST);
令LR將空值賦給customer參數(shù),然后在后面的腳本中結(jié)合判斷條件語句,如:
if(strcmp("", lr_eval_string("{customer}")) !=0),就可以讓腳本根據(jù)判斷條件做相應(yīng)的控制。
啊,人到齊了,酒席開始了。
你先一個人喝了一小口,這叫單元測試。
你跟旁邊的人說哥們咱們隨意,這叫交叉測試。
你跟幾個經(jīng)常一起玩的說兄弟幾個喝一杯,這叫集成測試。
但是他說不行,這杯要干了,這叫壓力測試。
喝完旁邊的兄弟桌回來再跟同桌的喝,這叫回歸測試。
于是你說那就大家一起來吧,這叫內(nèi)部測試。
這個時候領(lǐng)導(dǎo)向全場舉杯了,這叫公開測試。
在測試過程中終于有人受不了了
你突然跑向廁所,這叫捕獲異常。
你在廁所吐了,反而覺得狀態(tài)不錯,這叫內(nèi)存泄露。
你在臺面上吐了,覺得很慚愧,這叫程序異常。
你在領(lǐng)導(dǎo)面前吐了,覺得很害怕,這叫系統(tǒng)崩潰。
你先一個人喝了一小口,這叫單元測試。
你跟旁邊的人說哥們咱們隨意,這叫交叉測試。
你跟幾個經(jīng)常一起玩的說兄弟幾個喝一杯,這叫集成測試。
但是他說不行,這杯要干了,這叫壓力測試。
喝完旁邊的兄弟桌回來再跟同桌的喝,這叫回歸測試。
于是你說那就大家一起來吧,這叫內(nèi)部測試。
這個時候領(lǐng)導(dǎo)向全場舉杯了,這叫公開測試。
在測試過程中終于有人受不了了
你突然跑向廁所,這叫捕獲異常。
你在廁所吐了,反而覺得狀態(tài)不錯,這叫內(nèi)存泄露。
你在臺面上吐了,覺得很慚愧,這叫程序異常。
你在領(lǐng)導(dǎo)面前吐了,覺得很害怕,這叫系統(tǒng)崩潰。
前段時間在公司給部門的新同事培訓(xùn)LoadRunner,現(xiàn)將培訓(xùn)教材上傳。
下載地址:
http://www.aygfsteel.com/Files/xingcyx/LoadRunner培訓(xùn).rar
其中“進(jìn)階”部分我一直很不滿意,沒有一個線索串起來,顯得太零亂。但不知道應(yīng)如何改進(jìn),請大家多提意見。
下載地址:
http://www.aygfsteel.com/Files/xingcyx/LoadRunner培訓(xùn).rar
其中“進(jìn)階”部分我一直很不滿意,沒有一個線索串起來,顯得太零亂。但不知道應(yīng)如何改進(jìn),請大家多提意見。
在使用LoadRunner進(jìn)行性能測試時,有時候會遇到一種參數(shù)值唯一性要求十分嚴(yán)格的情況,就是不但在同一次測試過程中,要保證所輸入的參數(shù)值不能重復(fù),而且每一次測試,參數(shù)值也不能使用之前使用過的值。可是我們知道,性能測試往往是要多次重復(fù)地執(zhí)行,要么是執(zhí)行過程中出現(xiàn)一些異常情況,不得不多次重復(fù),要么是對系統(tǒng)進(jìn)行了優(yōu)化調(diào)整后的回歸測試。在這種情況下,如果我們只單純地使用unique number或者文件類型的unique取值等,都會不可避免地遇到一些麻煩。
這個時候Date/Time參數(shù)也許就可以派上用場了。采用%H%M%S的類型,相當(dāng)于在腳本中加上一個時間戳,對于該參數(shù)值,每一次執(zhí)行腳本時,LoadRunner都會自動獲取系統(tǒng)的當(dāng)前時間。如果再和其它類型的參數(shù)值結(jié)合起來使用,比如unique number或文件類型參數(shù),那么參數(shù)值重復(fù)的機率就大大降低了。
舉個例子來說,如果我們需要將一個18位的證件號碼做成唯一型的參數(shù)(假設(shè)該號碼沒有格式要求),那么我們可以將前面6位數(shù)字設(shè)置成Date/Time參數(shù),假設(shè)參數(shù)名為Time,后12位數(shù)字設(shè)置成unique number參數(shù),假設(shè)參數(shù)名為Certno,將二者結(jié)合起來使用,那么在腳本中需要輸入證件號碼的地方,參數(shù)值就用{Time}{Certno}組合起來。這樣在多次執(zhí)行腳本的時候,該參數(shù)值基本上就不會出現(xiàn)重復(fù)的情況了。
Date/Time參數(shù)還有很多種格式,如加上日期等,還可以自己添加格式,大家可以根據(jù)需要靈活使用。
這個時候Date/Time參數(shù)也許就可以派上用場了。采用%H%M%S的類型,相當(dāng)于在腳本中加上一個時間戳,對于該參數(shù)值,每一次執(zhí)行腳本時,LoadRunner都會自動獲取系統(tǒng)的當(dāng)前時間。如果再和其它類型的參數(shù)值結(jié)合起來使用,比如unique number或文件類型參數(shù),那么參數(shù)值重復(fù)的機率就大大降低了。
舉個例子來說,如果我們需要將一個18位的證件號碼做成唯一型的參數(shù)(假設(shè)該號碼沒有格式要求),那么我們可以將前面6位數(shù)字設(shè)置成Date/Time參數(shù),假設(shè)參數(shù)名為Time,后12位數(shù)字設(shè)置成unique number參數(shù),假設(shè)參數(shù)名為Certno,將二者結(jié)合起來使用,那么在腳本中需要輸入證件號碼的地方,參數(shù)值就用{Time}{Certno}組合起來。這樣在多次執(zhí)行腳本的時候,該參數(shù)值基本上就不會出現(xiàn)重復(fù)的情況了。
Date/Time參數(shù)還有很多種格式,如加上日期等,還可以自己添加格式,大家可以根據(jù)需要靈活使用。
在設(shè)置LoadRunner測試場景時,很多時候都需要設(shè)置用戶逐漸遞增的場景。可能大家通常的做法都是逐步增加用戶數(shù),并且分成多次去運行場景,比如第一次運行用100用戶,第二次用200用戶,第三次用300用戶等等。
其實,還可以有另外一種方法,就是針對同一個腳本設(shè)置多個組,使用組策略(點擊Edit Schedule按鈕,選擇Schedule by Group),第一個組為初始用戶數(shù),如100,第二個組以50或100遞增。每個用戶場景都持續(xù)穩(wěn)定地運行一段時間,這樣可以把幾種用戶場景下的測試在一次場景的運行過程中就一次性執(zhí)行完畢,而且還有一個好處是可以把多個用戶場景下的性能結(jié)果都整合到同一個結(jié)果中,也方便對比、分析。
其實,還可以有另外一種方法,就是針對同一個腳本設(shè)置多個組,使用組策略(點擊Edit Schedule按鈕,選擇Schedule by Group),第一個組為初始用戶數(shù),如100,第二個組以50或100遞增。每個用戶場景都持續(xù)穩(wěn)定地運行一段時間,這樣可以把幾種用戶場景下的測試在一次場景的運行過程中就一次性執(zhí)行完畢,而且還有一個好處是可以把多個用戶場景下的性能結(jié)果都整合到同一個結(jié)果中,也方便對比、分析。
摘要: 關(guān)于在LoadRunner中引用參數(shù)值的一個困惑 閱讀全文