LR的瀏覽器模擬配置說明(Browser Emulation)

一:模擬瀏覽器基本介紹

在Loadrunner有一個瀏覽器模擬設置,可以使代碼模擬瀏覽器的行爲,更加貼近真實的用戶操作,從而實現多用戶真實的併發操作。這個選項在Run-time Settings》browser》browser emulation

 

 

0.User-Agent

此選項點【Change】

use browser:可以直接選擇測試的瀏覽器類型,支持IE、firefox,當前是11版本主要支持3個,chrome暫不支持,可能最新的lr12支持吧。

use custom browser:自定義UA把需要的內容寫到裏面,更加靈活,可以支持chrome。

 

 

 

主要選項說明:

 2.選項詳細介紹

1.Simulate browser cache

 

 


 Simulate browser cache
 Instructs the Vuser to simulate a browser with a cache. By default, cache simulation is enable. If you disable this option, all Vuser emulate a browser with no cache avaiable.

模擬瀏覽器緩存
指Vuser模擬瀏覽器帶緩存。 默認情況下,啓用緩存模擬。如果禁用此選項,則所有Vuser使用瀏覽器不緩存功能

 

瀏覽器緩存

瀏覽器的緩存就是--使用瀏覽器訪問頁面時,瀏覽器會將一些網頁的文字,圖片,保存到本地的一個文件內。然後,再次使用瀏覽器訪問這個網頁的時候,先前被保存(緩存)的文字和圖片不會從新被下載,而是使用保存在本地的資源。 Browser Emulation就是用來設置腳本回放時,lr模擬瀏覽器緩存策略的 緩存的東西一般都放在C:\Documents and Settings\admin\Local Settings\Temporary Internet Files下。可以進去打開立面都是些什麼--文檔和圖片,而且都是你曾經瀏覽過的界面中信息

 

2.Cache URLs requiring content (HTML) 選項

 

 

    這個選項是指Vugen僅緩存網頁的一些必要信息,這些信息可以是一些必須的驗證信息、分析數據或者關聯數據,當你勾選了這項後,這些信息自動被緩存(默認是啓用)。

   提示:爲了減少虛擬用戶的內存佔用量,可以禁用該選項,除非它是一個明確規定的測試要求

    Cache URLs Requiring Content – Advanced 選項

在高級設置裏可以設置指定類型的信息存儲到cache中

注意:這裏的高級設置時同時針對所有的用戶組,而不能對單獨用戶組進行設置。

修改指定類型信息步驟:

1. 勾選Specify URLs requiring content in addition to HTML page。

2. 點“+”號,添加指定類型信息,如text/plain, text/xml, image/jpeg, and image/gif。

3. 點“-”號,從緩存中去除指定類型信息。

Check for newer versions of stored pages every visit to the page 選項

這個選項是指瀏覽器會將存儲在cache中的網頁信息和最新瀏覽的頁面進行比較,當你勾選此項時,vugen會增加"If-modified-since"到HTTP包頭,在場景執行過程中這個選項可以顯示最新的網頁信息,但是也增加了更多的網絡流量,通常配置這個選項是用來匹配瀏覽器設置來達到模擬瀏覽器的目的

Chang User-Agent:模擬各種瀏覽器

Download non-HTML resources:模擬本地Cache

Sinulate a new user on each iteration:模擬新用戶進行本次迭代操作,只在Action中有作用。

3.Check for newer versions of stored pages every visit to the page

 

該設置將指示瀏覽器檢查指定 URL 的較新(與存儲在緩存中的 URL 相比)版本。啓用該選項時,VuGen 將向 HTTP 標頭中添加“If-modified-since”屬性。此選項將打開頁面的最新版本,但將在場景或會話執行期間生成更大的流量。默認情況下,瀏覽器不檢查較新的資源,因此禁用該選項。配置該選項以匹配要模擬的瀏覽器中的設置。

在調查的過程中,逐漸瞭解了HTTP的If-Modified-Since的頭標籤的作用。 

大家都知道客戶端瀏覽器是有緩存的,裏面存放之前訪問過的一些網頁文件。
例如IE,會把緩存文件存到“C:\Documents and Settings\zh2000g\Local Settings\Temporary Internet Files” 這樣類似的目錄裏。
其實緩存裏存儲的不只是網頁文件,還有服務器發過來的該文件的最後服務器修改時間

If-Modified-Since是標準的HTTP請求頭標籤,在發送HTTP請求時,把瀏覽器端緩存頁面的最後修改時間一起發到服務器去,服務器會把這個時間與服務器上實際文件的最後修改時間進行比較。

如果時間一致,那麼返回HTTP狀態碼304(不返回文件內容),客戶端接到之後,就直接把本地緩存文件顯示到瀏覽器中。

如果時間不一致,就返回HTTP狀態碼200和新的文件內容,客戶端接到之後,會丟棄舊文件,把新文件緩存起來,並顯示到瀏覽器中。

 下面用一個簡單的小例子說明一下。

由於演示例子需要截取HTTP Request和Response的信息,我在這裏使用的工具是Fiddler。
1.首先在服務器創建一個簡單的HTML文件,用瀏覽器訪問一下,成功表示HTML頁面。Fiddler就會產生下面的捕獲信息。

  需要留意的是
  (1)因爲是第一次訪問該頁面,客戶端發請求時,請求頭中沒有If-Modified-Since標籤。
  (2)服務器返回的HTTP狀態碼是200,併發送頁面的全部內容。
  (3)服務器返回的HTTP頭標籤中有Last-Modified,告訴客戶端頁面的最後修改時間。  
  
2.在瀏覽器中刷新一下頁面,Fiddler就會產生下面的捕獲信息。
  需要注意的是
  (1)客戶端發HTTP請求時,使用If-Modified-Since標籤,把上次服務器告訴它的文件最後修改時間返回到服務器端了。
  (2)因爲文件沒有改動過,所以服務器返回的HTTP狀態碼是304,沒有發送頁面的內容。
 

 

3.用文本編輯器稍微改動一下頁面文件,保存。再用瀏覽器訪問一下,Fiddler就會產生下面的捕獲信息。
需要留意的是
  (1)客戶端發HTTP請求時,使用If-Modified-Since標籤,把上次服務器告訴它的文件最後修改時間返回到服務器端了。
  (2)因爲文件被改動過,兩邊時間不一致,所以服務器返回的HTTP狀態碼是200,併發送新頁面的全部內容。
  (3)服務器返回的HTTP頭標籤中有Last-Modified,告訴客戶端頁面的新的最後修改時間。

 

 HTTP的If-Modified-Since頭標籤與客戶端緩存相互配合,大大節約了網絡流量。

4.Download non-HTML resources選項

 

 該選項指示 Vuser 在回放期間訪問網頁時加載圖形圖像。其中包括同頁面一起錄製的圖形圖像,還包括未明確同頁面一起錄製的圖形圖像。當實際用戶訪問網頁時,需要等待圖像加載。因此,如果嘗試測試整個系統(包括終端用戶時間),請啓用該選項(默認情況下啓用)。要提高性能並且不模擬實際用戶,請禁用該選項。
注意:如果在圖像檢查中遇到了差異,請禁用該選項,因爲每次訪問網頁時,一些圖像會隨之改變(例如,廣告橫幅)。

5.Simulate a new user on each iteration選項

 指示 VuGen 將各個迭代之間的所有 HTTP 上下文重置爲 init 部分結束時相應的狀態。使用該設置,Vuser 可以更準確地模擬開始瀏覽會話的新用戶。它將刪除所有 Cookie,關閉所有 TCP 連接(包括 Keep-Alive 連接),清除模擬瀏覽器的緩存,重置 HTML 幀層次結構(幀編號將從 1 開始)並清除用戶名和密碼。默認情況下啓用該選項。

 

6.Clear cache on each iteration選項

每次迭代時清除瀏覽器緩存,以模擬第一次訪問網頁的用戶。清除該複選框可以禁用此選項並允許 Vuser 使用瀏覽器緩存中存儲的信息,模擬近期訪問過該網頁的用戶。

 

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