Loadrunner Port Mapping錄製方法

Loadrunner Port Mapping錄製方法(一種通用的錄製腳本的方法)

以下觀點不一定正確,僅供大家參考!

我們在很多時候因爲無法錄製腳本而困惑,如loadrunner使用FTP協議錄製Core FTP Lite時,只能看到loadrunenr捕獲到事件,但無法生成腳本,又比如使用POP3或SMTP協議錄製郵件收發時也是隻能捕獲到時間,但無法生成腳本,此時我介紹一種萬能的錄製方法可以解決這個問題。

 

其實loadrunner錄製的基本原理就是通過Port Mapping這個方法實現的,只不過我們在平時沒有在意而已,那麼先來介紹一下loadrunner典型的錄製原理,再介紹一下loadrunner使用Port Mapping方式的錄製原理。

 

通常情況下,我們在錄製腳本的過程是:

1、 選擇協議

2、 輸入要錄製的URL或指定要錄製的應用程序的路徑

3、 選擇錄製腳本的位置,存放在哪個ACTION中

4、 設置錄製選項

5、 開始錄製

 

此時loadrunner會自動監控你所指定的URL或應用程序所發出的請求及服務器返回的響應,它做爲一個第三者監視着客戶端與服務器端的所有對話,然後把這些對話記錄下來,生成腳本,再次運行時模擬客戶端發出的請求,捕獲服務器端的響應。它在做監視時會自動捕捉客戶端發出請示時所用的端口,並根據請求內容向服務器端的相應端口發送,而服務器迴應時,根據請求消息中的端口向客戶端某個端口發出迴應,也就是說loadrunner監聽的端口是由應用程序或請求所決定的。

 

好了,知道通常情況下loadrunner錄製腳本的原理後,我們在說一下Port Mapping錄製腳本的原理

Port Mapping錄製過程是:

我們已使用POP3協議錄製收郵件的過程來舉例

1、 選擇協議,選擇POP3協議

2、 在要錄製的應用程序路徑中輸入“loadrunner安裝路徑\bin\wplus_init_wsock.exe”

3、 設置錄製選項,在NETWORK的Port Mapping中新建一個代理

根據下圖新建一個代理:

在socket service設置中,要指明你客戶端程序要連接的服務器地址、端口、協議、錄製腳本的類型等選項,由於負責收郵件的服務器默認的端口是110,所以我們這裏將PORT設置爲110;

在TRAFFIC FORWARDING設置中,這個端口可以爲任意端口,主要是爲了讓loadrunner啓動的代理服務知道要把所有發往指定端口111的請求轉發給指定服務器的110端口

原理圖如下:

 

4、 設置要錄製的程序端口

將要錄製的應用程序原本發往外網服務器的請求發送到本地的loadrunner啓動的代理程序上,以便loadrunner進行監控

設置發送到本地的111端口:

5、 完成以上設置後,就可以開始錄製腳本了

在錄製腳本時我們會看到loadrunner會啓動一個代理程序

這個就代表我們設置的代理服務正常啓動了。通過重新錄製我們不僅看到了loadrunner捕獲到了事件,而且正確生成了腳本。

好了,總結一下Port Mapping錄製的錄製原理

首先將要錄製的應用程序向服務器發送請求的服務器地址和端口改爲本地計算機及111端口,在Port Mapping中設置的代理程序再將發往111端口的所有請求轉發給真正的服務器端,相當於loadrunner強制性的將本地某端口的通訊錄制了下來,通過這個代理更明確了需要監控的端口和協議。

其實loadrunner通常使用的錄製方式也是採用這樣一個原理,只不過我們並不知道它具體監控的是哪個端口,而在Port Mapping錄製方法中我們明確的指定了監聽端口。可以說通常的錄製方法是一種隱性的,而後一種錄製方法是顯性的。

可以通過此方法錄製我們現有的所有協議的腳本,不會再出現只看到事件無法生成腳本的情況了!

其實這纔是一種通用的錄製方法!
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章