初學Jmeter,主要是學習它的性能測試內容,因為Jmeter可以很好地模擬請求的人數和次數(模擬實際情況的高并發(fā)),這篇文章主要是介紹配置環(huán)境、下載安裝以及對一個功能非常簡單(沒有登錄編輯等操作)的小說網站進行性能測試,以后有機會再和大家分享功能更為復雜的網站或app的性能測試內容。
目錄
Jmeter介紹及配置
1.Jmeter介紹
2.JDK1.8
3.fiddler
4.Jmeter
Jmeter+fiddler實踐
1.網站主頁登錄
①打開fiddler,左下角開啟抓包
②瀏覽器輸入或刷新小說網站的網址
③分析查找fiddler抓到的接口
?④Jmeter操作
2.子網頁點擊登錄
①網站主頁內點擊登錄子網頁
②分析查找fiddler抓到的接口
?③?在線程組中添加HTTP請求,填入相關信息
3.小說主頁點擊登錄
①子網頁內點擊小說詳情
總結
Jmeter介紹及配置
1.Jmeter介紹
JMeter是一款純java編寫負載功能測試和性能測試開源工具軟件,它是Apache基金(開源為主)旗下的軟件。JMeter最大優(yōu)勢是開源及輕量級,而且適合自動化和持續(xù)集成,相比LoadRunner,JMeter小巧輕便且免費,因此逐漸成為了主流的性能測試工具,是每個測試人員都必須要掌握的工具之一。
JMeter工作的原理:
?
JMeter相當于是起到了代理的作用,原本客戶端通過瀏覽器直接可以向網絡發(fā)送請求,然后到達服務器,我們使用Jmeter時,在Jmeter里邊錄制好腳本并執(zhí)行,jmeter再通過網絡轉發(fā)給服務器,最終到達服務器,并返回我們需要的結果,Jmeter可以說起到了瀏覽器的傳輸作用,但是它的功能更為強大。
2.JDK1.8
因為JMeter正是純java編寫的,因此首先需要配置JDK(java開發(fā)工具包),因為JMeter對于JDK有要求,建議下載1.7及以上版本的。
JDK舊版本github鏈接:Releases · frekele/oracle-java · GitHub
下載安裝操作連接:Java新手怎樣安裝JDK,手把手教你如何安裝JDK
3.fiddler
Fiddler是位于客戶端和服務器端之間的HTTP代理,Fiddler能夠記錄客戶端和服務器之間的所有 HTTP請求,輔助Jmeter抓包請求,從而更有效率地構建腳本,工作原理??
?
下載鏈接:Download Fiddler Web Debugging Tool for Free by Telerik
隨便選個用途,填寫郵箱,地區(qū)選擇China,勾選“I accept the Fiddler End User License Agreement”,點擊“DownLoad for windows”即可下載,雙擊運行FiddlerSetup.exe安裝程序,然后傻瓜式安裝就行了。
如果只是需要監(jiān)聽本機瀏覽器HTTP數據包的話不需要做任何額外配置,不過我們往往會接觸HTTPS協(xié)議請求,HTTPS數據報文傳輸的時候涉及到證書及數據加密的問題,所以Fiddler需要抓取HTTPS報文 的話還需要做其他配置。
打開Fiddler配置:Tools->Options->HTTPS:
?
?勾選Capture HTTPS CONNECTS和Decrypt HTTPS traffic選項,這樣fiddler就配置完成了。
4.Jmeter
Jmeter的下載安裝比較簡單,直接去官網即可:Apache JMeter - Download Apache JMeter
?
目錄介紹:printable_docs:jmeter官方文檔及例子;licenses: 許可證;bin:啟動命令、配置文件;docs:官方文檔;lib:java抓包庫;lib/ext:jmeter抓包庫;extras:小工具、其他文檔
Jmeter不同于普通的軟件,bin/jmeter.bat 才是運行接口??
?
Jmeter+fiddler實踐
作為性能測試入門的項目來說,小說網站可能是不錯的選擇,我主要測試三個功能:網站主頁登錄、子網頁點擊登錄及小說詳情主頁點擊登錄。
1.網站主頁登錄
①打開fiddler,左下角開啟抓包
?
②瀏覽器輸入或刷新小說網站的網址
?
③分析查找fiddler抓到的接口
其實返回的接口數量非常多,但我們可以通過兩個個小技巧幫助我們更快地定位接口,一是注意“#”下的雙向或單項箭頭的接口,一般接口都在這,二是查看接口的響應內容是不是和實際相符,這個接口較為簡單,是get請求,一般在Jmeter只需填上url就行。
?
?④Jmeter操作
一、打開Jmeter,在選項中設置中文后,在Test Plan中添加個線程組,線程組的作用就是模擬用戶人數(線程數)及次數(循環(huán)次數),是一個性能測試的起點。
?
?
二、在線程組中添加HTTP請求,由于是簡單的get請求,選擇請求類型并填入協(xié)議、IP、路徑即可
??
?
三、在線程組中添加查看結果樹,執(zhí)行綠色啟動按鍵,便可在結果數中查看運行情況
?
四、綠色?代表腳本運行(請求)成功,可在響應數據中查看返回的信息,確認這是網站主頁的請求?
2.子網頁點擊登錄
子網頁點擊登錄與網站主頁登錄相似,因此描述較省略
①網站主頁內點擊登錄子網頁
②分析查找fiddler抓到的接口
?由抓包信息可知,點擊登錄子網頁也是get請求
?③?在線程組中添加HTTP請求,填入相關信息
3.小說主頁點擊登錄
①子網頁內點擊小說詳情
?②分析查找fiddler抓到的接口(get請求)
由于前兩步抓包的都是get請求,但現實情況中post請求的機率也很大,因此這兒我們抓一個post請求,現實情況下,post發(fā)送請求需要攜帶請求體,你可以把它看成杯子和杯蓋的關系。
?③Jmeter操作
一、在線程組中添加HTTP請求,最關鍵的是改為post請求和填入請求體?,可復制上圖??的請求體至JSON在線解析及格式化驗證 - JSON.cn中,再將格式化好的內容填入
二、線程組中添加聚合報告,用以查看三個用例的性能測試詳情,其實走到這兒完整的腳本就已經完成了
?三、修改線程組中的屬性,線程數為50(用戶數50),循環(huán)次數2(每位用戶操作兩次)
?四、線程組處右鍵選擇啟動,等待測試結束即可查看聚合報告??
簡單地分析一下,平均值和中位數相差較大,同時90%百分位至99%百分位逐步增大,說明了隨著并發(fā)數的增加,響應時間逐步減慢,后期甚至可能出現了卡頓。不過好在異常為0,說明準確率還是挺高的。因為無具體的測試環(huán)境,吞吐量(反應服務器承受的壓力,m/min)等數據暫無參考意義。
文章來源:http://www.zghlxwxcb.cn/news/detail-407739.html
總結
大家如果有疑問都可以評論提出,有不足之處請大家批評指正,希望能多結識這方面的朋友,共同學習、共同進步。文章來源地址http://www.zghlxwxcb.cn/news/detail-407739.html
到了這里,關于【性能測試】功能簡單的小說網站(Jmeter+fiddler實踐)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!