性能測試工具基本工作原理及仿真能力比較


性能測試的基本概念

性能測試:是指在特定情況下測試系統如何執行的。資源的使用、可擴展性和可靠性也是性能測試的范疇。性能測試是性能工程的一個子集,主要發現軟件架構以及設計導致的性能問題。

性能測試的目標:主要目標是測出系統運行的性能指標基線,我們在測試中也可能測試一些業界定義的性能指標基線。性能測試的目的不是尋找應用程序的缺陷,它更加重要的目的是
測試基線以及程序的標准性能。性能測試特征就是關注測試性能測試的結果 以及持續的監控。

性能測試工具分類

性能測試工具主要包括服務端性能測試工具和客戶端性能測試工具。本次培訓側重於服務端性能測試的講座

  服務端性能測試工具工作原理

 服務端性能測試工具仿真度

協議模擬:是性能測試工具直接模擬客戶端向服務端下發的請求協議。
客戶模擬 :是性能測試工具間接的模擬客戶向服務端下發的請求協議,它是通過驅動客戶端界面操作,由
客戶端程序向服務端下發請求協議。

 

 性能測試工具工作原理:協議模擬

對於消費者用戶,經常使用瀏覽器上網,然后在地填欄中輸入網址,然后回車,即可看到想要看的網站頁信息。但是就這樣一個小小的回車操作,瀏覽器為了把網頁展現在用戶面前,需要調用大量的HTTP請求。這些請求之間是並發的(HTTP1協議,瀏覽最高支持6個並發。HTT2協議,瀏覽器可以並發到100-200)。通過這些HTTP請求來獲得頁面上的各種顯示元素(圖片、按鈕、表格等)。大家可以在打開瀏覽器按F12按鈕並切換到network 頁面,可以查看到瀏覽器下發HTTP請求的瀑布圖。
每一個終端用戶的操作都是一個瀑布圖,下圖是三個終端用戶坐標圖,用以說明服務端與客戶端之間的關系,以及客戶端的瀑布圖對服務端產生壓力的原理性說明。
性能測試工具對服務端進行性能測試,首先要做的就是先仿真單個用戶,再通過單個用戶延伸出多個用戶。多個用戶模擬,性能測試工具大部分采用多線程實現,一個線程通過執行HTTP腳本仿真一個用戶,用戶的並發請求,線程通過並發執行HTTP請求實現。

  性能測試工具協議模擬仿真能力對比

目前業界的性能測試基本都以協議協議模擬為主,只有kylinTOP測試與監控平台同時支持協議模擬和客戶模擬兩種方式。這兩種方式的優缺點上面也介紹了。下面我們重點看一下協議模型仿真度對比情況。從下圖看只有“kylinTOP測試與監控平台”提供的協議的精准度最高。

  

  性能測試工具的架構圖

一款好的性能測試工具的應當是分布式系統。目前業界大部分性能測試工具都是C/S架構(如:loadRunner ,Jmeter),kylinTOP測試與監控平台架構是采用B/S架構。
但是它們都有一個共同的特征,執行器(用於性能執行腳本)可以分布在多台機器上,用於支撐高並發的場景。下圖是以kylinTOP測試與監控平台為原型的系統架構圖,以供大家學習和加深理解性能測試工具的體系結構。

  性能測試工具基本操作步驟

下圖以"kylinTOP測試與監控平台"性能測試的基本操作為原型畫出的一張性能測試的基本流程。其它性能工具的操作流程基本相似。它們之間的差異點主要體現在對每個操作小步驟的能力支撐的程度的高低。

性能測試工具基本工作原理及基本操作流程


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM