談談LoadRunner中的關聯

發表于:2007-07-10來源:作者:點擊數: 標簽:lr關聯
當錄制腳本時,VuGen會攔截client端(瀏覽器)與server端(網站 服務器 )之間的對話,并且記錄下來,產生腳本 當執行腳本時,VuGen偽裝成瀏覽器,然后根據腳本,把當初瀏覽器所做過的,再對網站服務器運行一遍。 所以記錄在腳本中要跟服務器所說的話,完全與
  當錄制腳本時,VuGen會攔截client端(瀏覽器)與server端(網站服務器)之間的對話,并且記錄下來,產生腳本

        當執行腳本時,VuGen偽裝成瀏覽器,然后根據腳本,把當初瀏覽器所做過的,再對網站服務器運行一遍。

        所以記錄在腳本中要跟服務器所說的話,完全與當初錄制時所說的一樣,是寫死的。這樣的作法在遇到有些比較聰明的服務器時,還是會失效。這時就需要透過「關聯(correlation)」的做法來讓VuGen可以再次成功地騙過服務器。

何謂關聯(correlation)?
所謂的關聯(correlation)就是把腳本中某些寫死的(hard-coded)數據,轉變成是取自服務器所送的、動態的、每次都不一樣的數據

下面舉一個實例來說明:

        當錄制腳本時,瀏覽器送出網頁A的請求,服務器將網頁A的內容傳送給瀏覽器,并且夾帶了一個ID=123的數據,當瀏覽器再送出網頁B的情求時,這時就要用到ID=123的數據,服務器才會認為這是合法的請求,并且把網頁B的內容送回給瀏覽器。

        在執行腳本時會發生什么狀況?瀏覽器再送出網頁B的請求時,用的還是當初錄制的ID=123的數據,而不是用服務器新給的ID=456,整個腳本的執行就會失敗。

用以下進行圖示:

     

具體錯誤的信息會出現一些什么內容呢?

        錯誤訊息有可能會提醒您要重新登入,但是也有可能直接就顯示HTTP 404的錯誤訊息。
VuGen提供二種方式幫助您找出需要做關聯(correlation)的值:
1. 自動關聯
2. 手動關聯
自動關聯
        VuGen內建自動關聯引擎(auto-correlation engine),可以自動找出需要關聯的值,并且自動使用關聯函數建立關聯。
自動關聯提供下列二種機制:
? Rules Correlation:在錄制過程中VuGen會根據訂定的規則,實時自動找出要關聯的值。規則來源有兩種:
o 內建(Built-in Correlation):
        VuGen已經針對常用的一些應用系統,如AribaBuyer、BlueMartini、BroadVision、InterStage、mySAP、NetDynamics、Oracle、PeopleSoft、Siebel、SilverJRunner等,內建關聯規則,這些應用系統可能會有一種以上的關聯規則。您可以在【Recording Options】>【Internet Protocol】>【Correlation】中啟用關聯規則,則當錄制這些應用系統的腳本時,VuGen會在腳本中自動建立關聯。
        您也可以在【Recording Options】>【Internet Protocol】>【Correlation】檢視每個關聯規則的定義。
請依照以下步驟使用Rule Correlation:
1. 啟用auto-correlation
1. 點選VuGen的【Tools】>【Recording Options】,開啟【Recording Options】對話窗口,選取【Internet Protocol】>【Correlation】,勾選【Enable correlation during recording】,以啟用自動關聯。
2. 假如錄制的應用系統屬于內建關聯規則的系統,如AribaBuyer、BlueMartini、BroadVision、InterStage、mySAP、NetDynamics、Oracle、PeopleSoft、Siebel、SilverJRunner等,請勾選相對應的應用系統。
3. 或者也可以針對錄制的應用系統加入新的關聯規則,此即為使用者自訂的關聯規則。
4. 設定當VuGen偵測到符合關聯規則的數據時,要如何處理:
【Issue a pop-up message and let me decide online】:跳出一個訊息對話窗口,詢問您是否要建立關聯?!?BR>【Perform correlation in sceipt】:直接自動建立關聯

手動關聯
手動關聯的執行過程大致如下:
1. 使用相同的業務流程與數據,錄制二份腳本
2. 使用WinDiff工具協助找出需要關聯的數據
3. 使用web_reg_save_param函數手動建立關聯
4. 將腳本中有用到關聯的數據,以參數取代
接下來將詳細的說明如何執行每個步驟
使用相同的業務流程與數據,錄制二份腳本
1. 先錄制一份腳本并存檔。
2. 依照相同的操作步驟與數據錄制第二份腳本并存盤。注意,所有的步驟和輸入的數據一定都要一樣,這樣才能找出由服務器端產生的動態數據。
有時候會遇到真的無法使用相同的輸入數據,那您也要記住您使用的輸入數據,到時才能判斷是您輸入的數據,還是變動的數據。
使用WinDiff工具協助找出需要關聯的數據
1. 在第二份腳本中,點選VuGen的【Tools】>【Compare with Vuser…】,并選擇第一份腳本。
2. 接著WinDiff會開啟,同時顯示二份腳本,并顯示有差異的地方。WinDiff會以一整行黃色標示有差異的腳本,并且以紅色的字體顯示真正差異的文字。(假如沒看到紅色字體,請點選【Options】>【View】>【Show Inline Differences】)。
3. 逐一檢視二份腳本中差異的部份,每一個差異都可能是需要做關聯的地方。選取差異的腳本,然后復制。

4.然后利用一些函數實現關聯

        以上僅僅談了一下LR腳本為什么要關聯,關聯包括手工關聯和自動關聯,更為詳細的內容可以參照LR的使用說明書

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97