第一部分:性能測試的類型,它們之間什麼關係?apache
負載測試:負載測試是一種主要爲了測試軟件系統是否達到需求文檔設計的目標,譬如軟件在必定時期內,最大支持多少併發用戶數,軟件請求出錯率等,測試的主要是軟件系統的性能。服務器
壓力測試:強度測試也就是壓力測試,壓力測試主要是爲了測試硬件系統是否達到需求文檔設計的性能目標,譬如在必定時期內,系統的cpu利用率,內存使用率,磁盤I/O吞吐率,網絡吞吐量等,壓力測試和負載測試最大的差異在於測試目的不一樣。網絡
容量測試:肯定系統最大承受量,譬如系統最大用戶數,最大存儲量,最多處理的數據流量等。併發
併發測試:經過模擬用戶併發訪問,測試多用戶併發訪問同一個軟件、同一個模塊或者數據記錄時是否存在死鎖或其者性它的性能問題。工具
可靠性測試:在給系統加載必定業務壓力的狀況下,使系統運行一段時間,以此檢測系統是否穩定。性能
性能測試主要是經過自動化的測試工具模擬多種正常、峯值以及異常負載條件來對系統的各項性能指標進行測試。負載測試和壓力測試都屬於性能測試,二者能夠結合進行。經過負載測試,肯定在各類工做負載下系統的性能,目標是測試當負載逐漸增長時,系統各項性能指標的變化狀況。壓力測試是經過肯定一個系統的瓶頸或者不能接收的性能點,來得到系統能提供的最大服務級別的測試。測試
第二部分:搭建並配置JMeter的性能測試環境spa
①首先從網上找到JMeter下載的資源,將如下兩個東西複製到apache-jmeter中:設計
———> 3d
②將監控服務器的ServerAgent拷貝到須要監控的服務器中:
③以本機做爲服務器,啓動ServerAgent,啓動端口默認爲4444:
④雙擊ApacheJMeter打開JMeter:
出現下面的界面:
第三部分:選擇一個Web應用系統開展性能測試,我選擇了學校的教務管理系統
①增長監聽器控件用來監控系統資源:
②添加循環控制器,定時器,各類原件(因爲電腦卡死,因此從新制做了一個):
在採樣器中填寫教導管理系統的網址:
③運行:
CPU監測以下:
聚合報告中數據還在不斷地更新:
④測試多組負載,併發用戶數100時:
併發用戶數300時:
用戶數爲1000時:
用戶數到了1000的時候,連中止測試都要一下子時間:
第四部分:遇到的問題
JDK版本不一致:從網上下載相應版本的JDK
監測CPU的圖片一直都沒法加載出來:沒有填寫數據地址
測試時電腦卡死:徹底就是數值設置錯誤,改正就行了
第五部分:結果分析
由以上的的測試來看,當用戶數爲300時,錯誤率就有5.68%了,教務管理系統的性能仍是有待改進的.