1、KingBaseES 人大金倉資料庫 是多資料庫、多模式。2、public 為預設模式,因此,預設情況下,我們可以在 public 模式下新建表即可。總的來說,使用 CYQ.Data 框架操作 KingBaseES 資料庫可以簡化開發流程,提高開發效率,同時也增強了系統的穩定性和安全性 ...
性能測試完整教程(附代碼資料)主要內容講述:性能測試大綱。。。。。。。。。。。。。。
全套筆記資料代碼移步: 前往gitee倉庫查看
感興趣的小伙伴可以自取哦,歡迎大家點贊轉發~
性能測試大綱
序號 | 階段 | 概述 |
---|---|---|
01 | 入門 | 1. 認識性能測試分類-(負載測試、壓力測試、併發測試、穩定性測試)2. 常用性能測試指標-(吞吐量、併發數、響應時間、點擊數...)3. 性能測試工具選擇 |
02 | 性能腳本 | 1. LoadRunner介紹2. 腳本錄製、運行、參數化3. 關聯、檢查點、事務、集合點 |
03 | 性能場景 | 1. 場景分類、場景設計、場景運行策略2. 資源監控、SLA、IP Wizard應用 |
04 | 性能分析 | 1. 摘要報告、事務圖表、圖表合併2. 交叉結果、拐點分析、Web項目資源分析 |
性能測試基礎知識
目標
理解什麼是性能測試
掌握性能測試的基礎分類
熟悉性能測試的常用指標
什麼是性能測試?
目標
瞭解為什麼學習性能測試
掌握什麼是性能測試
瞭解性能測試的焦點
概念
性能測試是模擬多種正常、峰值以及異常負載條件來對系統的各項性能指標進行的測試。
說明:
峰值:客戶指定指標數值或場景需求數值,如:CPU使用率80%以內、登錄3秒、記憶體空間40%等等
負載:用戶(一個或多個)向伺服器發送請求,負載測試我們1.2節會講解
性能測試與功能測試(焦點)
功能測試:驗證軟體系統操作功能是否符合產品功能需求規格,主要焦點在功能(正向、逆向);
性能測試:驗證軟體系統是否滿足業務需求場景,主要焦點是業務場景的滿足度(時間、空間);
說明: 時間:軟體的響應時間... 空間:伺服器的磁碟讀寫數率、CPU 使用率、記憶體空閑率...
功能測試和性能測試是相輔相成的,對於一款優秀的軟體產品來講,它們是測試工作中不可或缺的兩個重要環節。
需求 解決方案
求職需求:
面試:會性能測試嗎?
招聘信息:要求會使用性能測試工具LoadRunner、Jmeter
業務需求:
登錄不得超過3秒鐘
開發一款 Web 電商網站,使用 Java 還是 PHP 呢?
OA 辦公系統-我們公司20000左右員工需要使用此系統。
解決方案:
負載測試-根據客戶實際應用場景模擬測試應用軟體、伺服器是否滿足需求;如果不滿足,則定位問題,進行調整直到滿足需求;
分別使用 Java 和 PHP 寫個 Demo,搭建相同的應用場景進行性能測試,找出最優符合應用場景的開發語言;
根據二八定律統計出單位時間內(秒)最高請求數。
性能測試分類及常用指標
性能測試是個綜合的概述,性能測試指的是測試一種分類或多種分類,任何一具體分類,都是性能測試
一、性能測試常用分類
- 負載測試
- 壓力測試
- 併發測試
- 穩定性測試
性能測試分類還有其他類型比如:配置測試、容量測試等,前期我們先熟悉以上常用分類
1.1 負載測試 【重點】
通過逐步增加系統負載,測試系統性能的變化,並最終確定在滿足系統的性能指標情況下,系統所能夠承受的最大負載量的測試。(負載:向伺服器發送請求)
負載測試是通過逐步加壓的方式來確定系統的處理能力、確定系統能夠承受的各項閥值。 例如:逐步加壓,從而得到“響應時間不超過3秒”、“伺服器CPU平均利用率低於80%”等指標的閥值。
*閥值:關註的某一具體數值(比如:登錄小於3秒、用戶數2000、業務成功率100%)
1.2 壓力測試 【重點】
通過逐步增加系統負載,測試系統性能的變化,並最終確定在什麼負載條件下系統性能處於【失效】狀態。
- 壓力測試:是逐步增加負載,使系統某些資源達到飽和甚至失效。(如:測試系統最多支持同時處理多少請求,超過此數數量系統癱瘓)
- 負載測試:是逐步增加負載,確定在滿足性能指標情況下,系統能承受的最大負載測試。(如:登錄3秒內,最多支持多少用戶同時登錄;如超出此數量,可能需要5秒鐘或更多時間才能登錄成功)
1.3 併發測試 【重點】
概念:併發測試就是【多用戶】同時訪問【同一個應用】。
目的:測試應用伺服器指定功能的同時訪問數是否達到預期結果。
*併發測試需要配合集合點來使用(集合點:我們在介面階段已瞭解)
1.4 穩定性測試【理解】
通過給系統載入一定的業務壓力(如:CPU資源在70%~90%的使用率)的情況下,運行一段時間,檢查系統是否穩定。
*通常穩定性測試,我們測試一段時間即可;(如:24小時、3×24小時或7×24小時來模擬長時間運行)
二、性能測試常用指標【重要】
一些經過運算得出的結果,用來衡量某種操作性能的統稱;比如:錯誤率0.5%
性能測試常用指標:
- 吞吐量
- 併發數
- 響應時間
- 點擊數
- 資源利用率
- 錯誤率
2.1 吞吐量
吞吐量(Throughput):指的是單位時間內處理的客戶端請求數量,直接體現軟體系統的性能承載能力。 通常情況下,吞吐量用“請求數/秒”或者“頁面數/分鐘”來衡量。
從業務角度來看,吞吐量也可以用“業務數/小時”、“業務數/天”、“訪問人數/天”、“頁面訪問量/天”來衡量。
從網路角度來看,還可以用“位元組數/小時”、“位元組數/天”等來衡量網路的流量。
2.2 併發數
併發(Concurrency):它最簡單的描述就是指多個同時發生的業務操作。(例如,100個用戶同時單擊登錄頁面的“登錄”按鈕操作。)
併發性測試描述的是多個客戶端同時向伺服器發出請求,考察伺服器端承受能力的一種性能測試方式。
2.3 響應時間
響應時間指用戶從客戶端發起一個請求開始,到客戶端接收到從伺服器端返回結果整個過程所耗費的時間
2.4 點擊數
點擊數是衡量Web伺服器處理能力的一個重要指標。它的統計是客戶端向Web伺服器發了多少次HTTP請求計算的。
- 點擊數不是通常一般人認為的訪問一個頁面就是1次點擊數,點擊數是該頁麵包含的元素(如:圖片、鏈接、框架等)向Web伺服器發出的請求數數量。
- 通常我們也用每秒點擊次數(Hits per Second)指標來衡量Web伺服器的處理能力。
2.5 資源利用率
是指系統各種資源的使用情況,一般用“資源的使用量/總的資源可用量×100%”形成資源利用率的數據。
通常,沒有特殊需求的話:
- 建議CPU使用率不高於80%(±5);
- 記憶體使用率不高於80%;
- 磁碟讀寫時間比不高於90%。
2.6 錯誤率
錯誤率指系統在負載情況下,失敗交易的概率。錯誤率=(失敗交易數/交易總數)*100%。
- 不同系統對錯誤率要求不同,但一般不超過千分之五;
- 穩定性較好的系統,其錯誤率應該由超時引起,即為超時率。
三、性能常用測試工具
- Jmeter
- LoadRunner【本階段學習】
性能測試的工具有很多,目前最常用就是這兩款,我們作為性能測試初期入門掌握這兩款工具足矣!
3.1 Jmeter
Apache 公司使用 Java 平臺開發的一款測試工具
作用:性能測試、介面測試、Web測試(無GUI,GUI:graphical user interface)
優點:免費、開源、小巧
3.2 LoadRunner
HP公司使用C語言開發的一款性能負載測試工具
作用:模擬高併發負載測試、測試場景搭建、運行、監控及結果分析
優點:支持多協議、自帶強大的圖表功能、可根據需求合併需要的圖表
缺點:收費
3.3 Jmeter 和 LoadRunner 的簡單對比
Jmeter:介面測試及介面性能壓測首選
LoadRunner:Web性能測試首選
性能測試基礎知識
目標
理解什麼是性能測試
掌握性能測試的基礎分類
熟悉性能測試的常用指標
LoadRunner 11安裝
一、安裝步驟
- 解壓 - Software_HP_LoadRunner_11.00_T7177_15013.iso
- 啟動安裝程式 - setup.exe(提示:許可權-滑鼠右鍵->以管理員身份運行);
- 根據安裝提示進行配置並點擊下一步操作,直到安裝完成;
- 修改註冊許可證
註意:
1). LoadRunner版本與操作系統的對應關係:
① LoadRunner 11版本推薦使用64位Windows 7旗艦版系統;
② LoadRunner 12版本推薦使用64位Windows 10專業版或教育版系統;
2). 自動安裝LoadRunner必要的依賴文件時,如遇要求重啟電腦,則重啟後再進行安裝即可;
3). 最好新建文件夾(如:C:\HP\LoadRunner)並且避免安裝路徑中有中文和空格;
(原因:如果預設安裝路徑,則有可能導致LR自帶的機票網站會出現登錄異常;)
二、安裝圖解
2.1 解壓Software_HP_LoadRunner_11.00_T7177_15013.iso後文件
滑鼠右鍵->以管理員身份運行:setup.exe
2.2 點擊安裝選項
點擊:LoadRunner 完整安裝程式
2.3 確定安裝loadrunner依賴程式
點擊:確定
2.4 異常【重要】
處理辦法:重啟電腦
2.5 開始安裝LoadRunner
點擊:下一步
2.6 許可協議
點擊:我同意、下一步
2.7 客戶信息
處理:預設或根據需求填寫 點擊:下一步
2.8 選擇安裝文件夾【重要】
處理:新建指定文件夾(避免中文及空格、避免預設路徑) 點擊:下一步
2.9 確認安裝
點擊:下一步
2.10 安裝中
處理:耐心等待
2.11 安裝完成
點擊:完成
2.12 查看-安裝完成文件
點擊:開始菜單-HP LoadRunner
3. 註冊許可證-使用圖
3.1 修改前
說明:使用用戶類型:臨時
3.2 修改後
說明:使用用戶類型:永久
3.3 操作步驟
lf_file.rar文件下載
- 下載lf_file.rar文件,
- 將 lm70.dll、mlr5lprg.dll 兩個文件複製並替換到LR11安裝目錄下的bin文件夾下
- 運行 lr刪除註冊表.exe 文件
- 輸入註冊信息(New License,以下註冊碼任選其一即可)
1). Global-100的註冊碼:AEACFSJI-YJKJKJJKEJIJD-BCLBR
2). Web-10000的註冊碼:AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB
3). 最高支持6.5w個併發的註冊碼:AEACFSJI-YJKJKJJKEJIJD-BCLBR
1) lf_file.rar文件
2) 複製替換 lm70.dll、mlr5lprg.dll(位置:lr安裝目錄下bin目錄)
3) 運行 lr刪除註冊表.exe 文件
4) 輸入註冊信息(New License)
啟動註冊視窗
性能測試流程
流程
1. 性能測試需求分析
2. 性能測試計劃
3. 性能測試用例
4. 測試腳本編寫
5. 測試場景設計
6. 測試場景運行
7. 場景運行監控
8. 運行結果分析
9. 系統性能調優
10. 性能測試報告總結
1 性能測試需求分析
需求分析就是把真正需求搞清楚
例如:
1). 公司需要對所有的功能都進行性能測試;
2). 用戶登錄響應時間小於3秒鐘;
3). 系統支持20萬用戶併發訪問;
2 性能測試計劃
1). 性能測試計劃是對性能測試過程描述的重要過程;
2). 在對需求文檔經過認真分析後,作為性能測試管理人員,需要編寫的第一份文檔就是性能測試計劃;
3). 性能測試計劃中,需要闡述產品、項目的背景,將前期的需要測試性能需求明確,並落實到文檔中。
3 性能測試用例
性能測試需求最終要體現在性能測試用例設計中,性能測試用例應結合用戶應用系統的場景,設計出相應的性能測試用例,用例應能覆蓋到測試需求。
提示:
1). 明確哪些功能業務量較大;
2). 明確系統預期的用戶規模、併發用戶數、線上用戶數;
3). 明確系統業務的處理能力要求,如:TPS、響應時間、系統資源利用率等;
TPS :(Transaction per second)事務數/秒
4). 詳細的操作步驟及場景的搭建模式
4 測試腳本編寫
性能測試用例編寫完成以後,接下來就需要結合用例的需要,進行測試腳本的編寫工作。
註意:
1). 協議的正確選用;
2). 腳本保證其正確性,去除冗餘代碼;
3). 註重編碼的規範和代碼的編寫質量。
5 測試場景設計
測試場景設計的一個重要原則就是依據測試用例,把測試用例設計的場景展現出來。
提示:
1). 虛擬用戶數量及啟動虛擬用戶方式
2). 場景的相關設置(如:集合點)
3). 腳本是否存在依賴關係(登錄與註冊)
6 測試場景運行
測試場景運行是關係到測試結果是否準確的一個重要過程。
註意:
1). 負載的測試機是否能夠運行設定的虛擬用戶數;
2). 有沒有“預熱”的過程;
3). 有沒有模擬用戶的真實環境;
4). 性能用例運行次數是否過少。
7 場景運行監控
場景運行監控,可以在場景運行時決定要監控那些數據,便於後期分析性能測試結果。
1). 應用性能測試工具的重要目的就是可以提取到本次測試關心的數據指標內容;
2). 性能測試工具利用應用伺服器取得在負載過程中相關計數器的性能指標。
(計數器:計算、統計性能指標的工具)
註意:儘量搜集與系統測試目標相關信息,無關內容不必進行監控。
8 運行結果分析
性能測試執行過程中,性能測試工具搜集相關性能測試數據,待執行完成後,這些數據會存儲到數據表或者 其他文件中,為了定位系統性能問題,我們需要系統分析這些性能測試結果。
提示:
1). 一般使用“拐點分析”方法,利用性能計數器曲線圖上的拐點進行分析的方法。
(基本思想就是性能產生瓶頸的主要原因就是因為某個資源的使用達到了極限,此時表現為隨著壓力的增大,
系統性能卻出現急劇下降,就產生了“拐點”現象。)
9 系統性能調優
性能測試分析人員經過對結果的分析以後,有可能提出系統存在性能瓶頸。
提示:
1). 調優人員(開發人員、資料庫管理員、系統管理員、網路管理員、性能測試分析人員)相關人員對系統進行調整;
2). 驗證-性能測試人員繼續進行第二輪、第三輪...的測試,與以前的測試結果進行對比,從而確定經過調整以後的
系統性能是否有提升。
註意事項:
系統調優由易到難的先後順序如下:
1. 硬體問題;
2. 網路問題;
3. 應用伺服器、資料庫等配置問題;
4. 源代碼、資料庫腳本問題;
5. 系統架構問題。
10 性能測試報告總結
性能測試總結要包含以下內容:
1). 性能測試需求覆蓋情況,性能測試過程中出現的問題,如何去分析、調優、解決的;
2). 測試人員、進度控制與實際執行偏差和性能測試過程中遇到各類風險是如何控制的;
3). 經過該項目性能測試後,有那些經驗和教訓等內容。
性能測試工具-LoadRunner
學習目標
1. 理解基於VuGen的腳本錄製
2. 掌握參數化的使用方法
3. 掌握關聯的使用方法
4. 掌握檢查點的使用方法
5. 掌握事務的使用方法
6. 掌握集合點的應用
LoadRunner介紹
一、LoadRunner簡介
LoadRunner是一種工業級標準的性能負載測試工具;可以模擬上千萬用戶實施測試,併在測試時可實時檢測應用伺服器及伺服器硬體的各種數據,來查找和確認存在的性能瓶頸;
支持多種協議,如:Web(HTTP/HTML)、Windows Sockets、FTP、ODBC、MS SQL Server等協議
二、LoadRunner組成【非常重要】
組成:
1. Virtual User Generator(VuGen)
2. Controller
3. Analysis
提示:
1. VuGen:腳本生成器-腳本錄製、編輯
2. Controller:控制器-設計場景、運行、監控
3. Analysis:測試結果分析
三、 理解LoadRunner的三大工具(擴展)
為了更好的理解LoadRunner性能測試三大工具作用,我們先回顧下不使用測試工具時,如果進行性能測試...
需求:
軟體系統支持100人同時登錄
實施:
1. 找100個員工及100臺電腦,每個員工註冊賬號OK,環境OK,輸入賬號、密碼完成...滑鼠放到登錄按鈕上;
2. 領導拿個大喇叭,高喊:1...2...3
3. 相關人員統計平均登錄時間及登錄前、登陸後的伺服器CPU、記憶體等使用情況
LoadRunner的執行原理:【重點】
1. VuGen:相當於打開登錄頁面、輸入賬號、輸入密碼、點擊登錄
2. Controller:手拿大喇叭的領導...
3. Analysis:相當與各個統計數據的相關人員