【自動關聯與手工關聯的不同】:自動關聯是在腳本錄制過程中,VuGen會根據已經制定好的規則,自動找出需要關聯的值或腳本錄制完成后,執行腳本一次,通過Correlation Studio自動找出需要關聯的數據,并建立關聯;而手動關聯是需要錄制兩份相同業務流程的腳本,輸入的數據要相同,利用WinDiff工具,找出兩份腳本之間不同之處,也就是需要關聯的數據,再通過web_reg_save_param函數手動建立關聯,將腳本中用到關聯的數據參數化。
Q14.你如何找出哪里需要關聯?請給一些你所在項目的實例。
A14:
1、錄制兩份相同業務流程的腳本,輸入的數據要相同
2、利用WinDiff工具,找出兩份腳本之間不同之處,也就是需要關聯的數據
3、通過web_reg_save_param函數手動建立關聯,將腳本中用到關聯的數據參數化。
示例:
通過錄制兩份腳本,進行對比,可知jsessionid、sap-ext-sid、sap-wd-cltwndid、sap-wd-tstamp需要進行關聯。
Q15.你在哪里設置自動關聯選項?
A15:錄制選項中進行設置,如下圖所示:
Q16.哪個函數是用來截取虛擬用戶腳本中的動態值?(手工關聯)
A16:Web_reg_save_param函數主要根據需要做關聯的動態數據前面和后面的固定字符串來識別、提取動態數據,所以在做關聯時,需要找出動態數據的左、右邊界字符串。
1.函數原型:
int web_reg_save_param (const char *ParamName, , LAST);
2.參數說明:
ParamNam:存放動態數據的參數名稱
List of Attributes:其它屬性,包含Notfound、LB、RB、RelFrameID、Search、ORD、SaveOffset、Convert、SaveLen。
Notfound:指當找不到要找的動態數據時,怎么處理。
Notfound=error,當找不到動態數據時,發出一個錯誤信息,為LoadRunner的默認值。
Notfound=warning,當找不到動態數據時,不發出錯誤信息,只發出警告,腳本會繼續執行下去不會中斷。
LB:動態數據的左邊界字符串,該參數為必選參數,并區分大小寫。
RB:動態數據的右邊界字符串,該參數為必選參數,并區分大小寫。
ORD:指提取第幾次出現的左邊界的數據,該參數為可選參數,默認值是1。假如值為All,則查找所有符合條件的數據并把這些數據存儲在數組中。
Search:搜尋的范圍??梢允荋eaders(只搜尋Headers)、Body(只搜尋Body部分,不搜尋Headers)、Noresources(只搜尋Body部分,不搜尋Header與Resource)或是All(搜尋全部范圍,此為默認值),該參數為可選參數。
RelFrameID:相對于URL而言,欲搜尋的網頁的Frame,此屬性可以是All或是具體的數字,該參數為可選參數。
SaveOffset:當找到符合的動態數據時,從第幾個字符開始才存儲到參數中,該參數為可選參數,此屬性值不可為負數,其默認值是0.
Convert:可能的值有兩種:
HTML_TO_URL:將HTML-encoded數據轉成URL-encoded數據格式。
HTML_TO_TEXT:將HTML-encoded數據轉成純文字數據格式。
SaveLen:從Offset開始算起,到指定長度內的字符串,才儲存到參數中,該參數為可選參數,默認值為-1,表示儲存到結尾整個字符串。
Q17.你在VUGen中何時選擇關閉日志?何時選擇標準和擴展日志?
A17:在測試場景執行時,關閉日志,因為日志信息過多,也會影響性能測試結果;在調試測試腳本時,可以選擇標準或擴展日志,用于輸出調試信息。
可以在運行時設置中,進行日志設置,如下圖所示:
Q18.你如何調試LoadRunner腳本?
A18: 通常采用以下方法調試LoadRunner測試腳本
斷點
【方法】在腳本的任意一行上按右鍵菜單或F9增加斷點。
單步跟蹤
【方法】通過菜單命令VUser—>Run Step by Step或F10,可以控制腳本以語句為單位執行。
日志輸出
原文轉自:http://www.uml.org.cn/Test/201106245.asp