這裡有愛,有分享,有工程師們的成長日記,點藍字「軟體測試面試匯總」進行關注,微信公眾號TestMadman
啟動jmeter,建立一個測試計劃
這裡再次說說怎麼安裝和啟動jmeter吧,昨天下午又被人問到怎樣安裝和使用,我也是醉了;在我看來,百度能解決百分之八十的問題,特別是基礎的問題。。。
安裝:去官網下載一個安裝包,官網地址:jmeter.apache.org(Windows系統下載.zip包,Linux系統下載.tgz包)
環境:jmeter是一個純java工具,因此,JDK必不可少,現在最新版的jmeter是3.1,做了很多的優化,建議使用1.7及以上的JDK
JDK版本請注意和作業系統吻合,下載後默認安裝,一般不需要修改環境變量
啟動:打開jmeter文件夾,bin文件→jmeter.bat(Windows執行文件)文件,就可以啟動jmeter了
啟動jmeter,默認有一個測試計劃,然後,修改計劃名稱,儘量使其變得有意義,容易看懂,然後,新建一個線程組
這裡線程數我設置為1,方便演示
然後,添加一個http信息頭管理器
這裡解釋一下為什麼要添加http信息頭管理器:
JMeter不是瀏覽器,因此其行為並不和瀏覽器完全一致。這些JMeter提供的配置元件中的HTTP屬性管理器用於儘可能模擬瀏覽器行為,在HTTP協議層上發送給被測應用的http請求
(1)HTTP Request Defaults(請求默認值)
用於設置其作用範圍內的所有HTTP的默認值,可被設置的內容包括HTTP請求的host、埠、協議等
(2)HTTP Authorization Manager(授權管理器)
用於設置自動對一些需要NTLM驗證的頁面進行認證和登錄
(3)HTTP Cache Manager
用於模擬瀏覽器的Cache行為。為Test Plan增加該屬性管理器後,Test Plan運行過程中會使用Last-Modified、ETag和Expired等決定是否從Cache中獲取相應的元素
(4)HTTP Cookie Manager(cookie管理器)
用於管理Test Plan運行時的所有Cookie。HTTP Cookie Manager可以自動儲存伺服器發送給客戶端的所有Cookie,並在發送請求時附加上合適的Cookie
同時,用戶也可以在HTTP Cookie Manager中手工添加一些Cookie,這些被手工添加的Cookie會在發送請求時被自動附加到請求
(5)HTTP Header Manager(信息頭管理器)
用於定製Sampler發出的HTTP請求的請求頭的內容。不同的瀏覽器發出的HTTP請求具有不同的Agent
訪問某些有防盜鏈的頁面時需要正確的Refer...這些情況下都需要通過HTTP Header Manager來保證發送的HTTP請求是正確的
http信息頭管理器添加好之後,需要填入信息頭的名稱以及對應的值,如下
Content-Type意思可以理解為參數名稱、類型,值下面輸入對應的參數類型就行了,這裡我測試時候需要傳輸json類型,因此就填入了application/json
接著,添加Sampler(取樣器)→http請求
按照截圖所示,填入測試的伺服器地址、埠、所用的戶協議、方法,這裡方法我用的是POST,然後填入路徑,選擇Body Data;
關於http請求的的屬性參數說明:
1)名稱:用於標識一個sample。建議使用一個有意義的名稱
2)注釋:對於測試沒任何影響,僅用來記錄用戶可讀的注釋信息
3)伺服器名稱或IP:http請求發送的目標伺服器名稱或者IP位址,比如http://www.baidu.com
4)埠號:目標伺服器的埠號,默認值為80,可不填
5)協議:向目標伺服器發送http請求時的協議,http/https,大小寫不敏感,默認http
6)方法:發送http請求的方法(連結:http://www.cnblogs.com/imyalost/p/5630940.html)
7)Content encoding:內容的編碼方式(Content-Type=application/json;charset=utf-8)
8)路徑:目標的URL路徑(不包括伺服器地址和埠)
9)自動重定向:如果選中該項,發出的http請求得到響應是301/302,jmeter會重定向到新的界面
10)Use keep Alive:jmeter 和目標伺服器之間使用 Keep-Alive方式進行HTTP通信(默認選中)
11)Use multipart/from-data for HTTP POST :當發送HTTP POST 請求時,使用
12)Parameters、Body Data以及Files Upload的區別:
1. parameter是指函數定義中參數,而argument指的是函數調用時的實際參數
2. 簡略描述為:parameter=形參(formal parameter), argument=實參(actual parameter)
3.在不很嚴格的情況下,現在二者可以混用,一般用argument,而parameter則比較少用
While defining method, variables passed in the method are called parameters.
當定義方法時,傳遞到方法中的變量稱為參數.
While using those methods, values passed to those variables are called arguments.
當調用方法時,傳給變量的值稱為引數.(有時argument被翻譯為「引數「)
4、Body Data指的是實體數據,就是請求報文裡面主體實體的內容,一般我們向伺服器發送請求,攜帶的實體主體參數,可以寫入這裡
5、Files Upload指的是:從HTML文件獲取所有有內含的資源:被選中時,發出HTTP請求並獲得響應的HTML文件內容後還對該HTML
進行Parse 並獲取HTML中包含的所有資源(圖片、flash等):(默認不選中)
如果用戶只希望獲取特定資源,可以在下方的Embedded URLs must match 文本框中填入需要下載的特定資源表達式,只有能匹配指定正則表達式的URL指向資源會被下載
接下來可以給這個測試計劃添加一個監視器,常用的監視器有「查看結果樹」和「聚合報告」
添加好監視器,點擊運行,開始測試
如上,測試結束後,如果我們的請求成功發送給伺服器,那麼結果樹裡面的模擬請求會顯示為綠色,可以通過取樣器結果裡面的響應狀態碼信息來判斷
也可以點擊請求模塊,查看我們發送的請求
裡面有我們發送的請求的方法、協議、地址以及實體主體數據,以及數據類型,大小,發送時間,客戶端版本等信息
響應數據:裡面包含伺服器返回給我們的響應數據實體,如下圖
歡迎同學們掃描二維碼報名吧!
快,關注這個公眾號,一起漲姿勢~
IT測試人的自媒體
微信號:Tester006
QQ : 869120106
長按二維碼關注吧
一起成長,一起分享,希望能對您有所幫助,我們是TestMadman,期待您的關注。