Jmeter(四) - 從入門到精通 - 創建網絡測試計劃(詳解教程)

1.簡介

在本節中,您將學習如何創建基本的 測試計劃來測試網站。您將創建五個用戶,這些用戶將請求發送到JMeter網站上的兩個頁面。另外,您將告訴用戶兩次運行測試。因此,請求總數爲(5個用戶)x(2個請求)x(重複2次)= 20個HTTP請求。要構建測試計劃,您將使用以下元素: 線程組, HTTP請求, HTTP請求默認值和 圖形結果

有關更高級的測試計劃,請參閱 構建高級Web測試計劃

1.1添加用戶

您要對每個JMeter測試計劃進行的第一步是添加一個 線程組元素。線程組告訴JMeter您要模擬的用戶數量,用戶應多久發送一次請求以及應發送多少次請求。

繼續並通過首先選擇“測試計劃”來添加ThreadGroup元素,單擊鼠標右鍵以獲得“添加”菜單,然後選擇“添加”→“線程組”。

現在,您應該在“測試計劃”下看到“線程組”元素。如果沒有看到該元素,則通過單擊“測試計劃”元素來“擴展”測試計劃樹。

接下來,您需要修改默認屬性。如果尚未選擇線程組元素,則在樹中選擇它。現在,您應該在JMeter窗口的右側部分中看到“線程組控制面板”(請參見下面的圖1.1)


圖1.1 具有默認值的線程組

首先爲我們的線程組提供一個更具描述性的名稱。在名稱字段中,輸入JMeter Users。

接下來,將用戶數量(稱爲線程)增加到5。

在下一個字段“加速週期”中,保留默認值1秒。該屬性告訴JMeter啓動每個用戶之間要延遲多長時間。例如,如果您輸入5秒鐘的加速期,JMeter將在5秒鐘結束時完成所有用戶的啓動。因此,如果我們有5個用戶和5秒鐘的加速期,則啓動用戶之間的延遲將爲1秒(5個用戶/ 5秒= 1個用戶每秒)。如果將值設置爲0,那麼JMeter將立即啓動所有用戶。

最後,在“循環計數”字段中輸入值2。該屬性告訴JMeter重複測試多少次。如果輸入的循環計數值爲1,則JMeter將僅運行一次測試。要讓JMeter重複運行您的測試計劃,請選擇永久複選框。

在大多數應用程序中,您必須手動接受在控制面板中所做的更改。但是,在JMeter中,控制面板會在您進行更改時自動接受它們。如果更改元素的名稱,則在離開控制面板後(例如,選擇另一個樹元素時),樹將使用新文本進行更新。                                                   有關完整的JMeter用戶線程組,請參見圖1.2。


圖1.2 JMeter用戶線程組

1.2添加默認的HTTP請求屬性

現在我們已經定義了用戶,是時候定義他們將要執行的任務了。在本部分中,您將爲HTTP請求指定默認設置。然後,在第1.3節中,您將添加使用您在此處指定的某些默認設置的HTTP請求元素。

首先選擇“ JMeter用戶(線程組)”元素。單擊鼠標右鍵獲得“添加”菜單,然後選擇“添加”→“配置元素”→“ HTTP請求默認值”。然後選擇此新元素以查看其控制面板(請參見圖1.3)。

圖1.3HTTP請求默認值

像大多數JMeter元素一樣,“ HTTP請求默認值控制面板具有一個您可以修改的名稱字段。在此示例中,將此字段保留爲默認值。

跳至下一個字段,即Web服務器的服務器名稱/ IP。對於您正在構建的測試計劃,所有HTTP請求都將發送到同一Web服務器jmeter.apache.org。在字段中輸入此域名。這是我們將指定默認值的唯一字段,因此請保留其餘字段的默認值。

HTTP Request Defaults元素不會告訴JMeter發送HTTP請求。它僅定義HTTP Request元素使用的默認值。

有關完整的HTTP Request Defaults元素,請參見圖1.4。

圖1.4 我們的測試計劃的HTTP默認值

幾乎所有的Web測試都應使用cookie支持,除非您的應用程序明確不使用cookie。要添加cookie支持,只需將HTTP Cookie Manager添加 測試計劃中的每個線程組這將確保每個線程都有自己的cookie,但會在所有HTTP Request對象之間共享

圖1.5 HTTP Cookie管理器

要添加HTTP Cookie管理器,只需選擇“線程組,然後從“編輯”菜單或右鍵單擊彈出菜單中選擇“添加”→“配置元素”→“ HTTP Cookie管理器”。

1.4添加HTTP請求

在我們的測試計劃中,我們需要發出兩個HTTP請求。第一個用於JMeter主頁(http://jmeter.apache.org/),第二個用於Change頁面(http://jmeter.apache.org/changes.html)。

JMeter按照它們在樹中出現的順序發送請求。

首先將第一個HTTP請求添加 到JMeter Users元素(添加→採樣器→HTTP請求)。然後,在樹中選擇HTTP Request元素並編輯以下屬性(請參見圖1.6):

  1. 將名稱字段更改爲“主頁”。
  2. 將路徑字段設置爲“ /”。請記住,由於您已經在HTTP Request Defaults元素中指定了此值,因此不必設置Server Name字段。

圖1.6 JMeter主頁的HTTP請求

接下來,添加第二個HTTP請求並編輯以下屬性(請參見圖1.7:

  1. 將名稱字段更改爲“更改”。
  2. 將“路徑”字段設置爲“ /changes.html”。
圖1.7 JMeter變更頁面的HTTP請求

1.5添加偵聽器以查看存儲測試結果

您需要添加到測試計劃中的最後一個元素是 Listener此元素負責將HTTP請求的所有結果存儲在文件中,並提供數據的可視模型。

選擇JMeter Users元素並添加一個Graph Results偵聽器(添加→偵聽器→後端偵聽器)。

1.6登錄網站

宏哥在上邊列舉的不是這種情況,但是某些網站要求您先登錄才能允許您執行某些操作。在網絡瀏覽器中,登錄名將顯示爲用戶名和密碼的表單,以及用於提交表單的按鈕。該按鈕生成POST請求,將表單項的值作爲參數傳遞。

要在JMeter中執行此操作,請添加HTTP請求,然後將方法設置爲POST。您需要知道表單使用的字段的名稱以及目標頁面。這些可以通過檢查登錄頁面的代碼來找到。[如果很難做到,則可以使用JMeter Proxy Recorder(相當於一款web頁面抓包工具,當然了你也可以使用其他的抓包工具)記錄登錄序列。]設置提交按鈕目標的路徑。單擊添加按鈕兩次,然後輸入用戶名和密碼詳細信息。有時,登錄表單包含其他隱藏字段。這些也將需要添加。


圖4.8。 示例HTTP登錄請求
圖1.8  示例HTTP登錄請求

1.7選擇同一用戶或不同用戶

創建測試計劃時,在每個線程組迭代中,我們可以選擇模擬運行多個迭代的同一用戶,或模擬運行一個迭代的不同用戶。您可以在線程組元素上配置此行爲,並使HTTP緩存管理器,HTTP Cookie管理器,HTTP授權管理器受此設置控制。

注意:敲黑板,敲腦殼啦!!!

在JMeter的最新版本中沒有這部分內容了,不要大驚小怪的。可能這部分的內容不是很重要吧,隨着版本的增加,Jmeter官方將這部分去掉了。


圖4.9。 選擇相同或不同的用戶
圖1.9 選擇相同或不同的用戶

您可以選擇在CookieManager / CacheManager / Authorization Manager中清除cookie /緩存內容/授權,也可以選擇由線程組控制。


圖4.10。 使用線程組控制CookieManager
圖1.10 使用線程組控制CookieManager
 

圖4.11。 使用線程組控制CacheManager
圖1.11 使用線程組控制CacheManager
 

圖4.12。 使用線程組控制授權管理器
圖1.12 使用線程組控制授權管理器

2.小結

好了今天的創建網絡測試計劃就分享到這裏,下一篇宏哥帶着小夥伴和童鞋們實戰一下,小試一下牛刀。順帶說一下高級網絡測試計劃的創建。

 

您的肯定就是我進步的動力。如果你感覺還不錯,就請鼓勵一下吧!記得隨手點波  推薦  不要忘記哦!!!

別忘了點 推薦 留下您來過的痕跡

 

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