軟件測試之壓力測試詳解

一、什么是壓力測試

軟件測試中:壓力測試(Stress Test),也稱為強度測試、負載測試。壓力測試是模擬實際應用的軟硬件環境及用戶使用過程的系統負荷,長時間或超大負荷地運行測試軟件,來測試被測系統的性能、可靠性、穩定性等。

常用的壓力測試軟件有:LoadRunner、Apache JMeter、NeoLoad、WebLOAD、Loadster、Load impact、CloudTest、Loadstorm、阿里云PTS等等,本文介紹的是使用Apache JMeter來進行壓力測試。

同時,在這我也準備了一份軟件測試視頻教程(含接口、自動化、性能等),需要的可以直接在下方觀看就行,希望對你有所幫助!【公眾號:互聯網雜貨鋪

軟件測試視頻教程觀看處:

軟件測試工程師大忌!盲目自學軟件測試真的會毀終生,能救一個是一個......

二、壓力測試關注點

1.壓力測試分為兩種測試場景:一種是單一接口進行壓測;第二種是多個接口同時壓測。壓測時間,一般控制在10-15分鐘。如果是疲勞測試,可以壓一天或一周,具體按照實際情況確定。

2.壓測設置參數:

1)線程數:用于設置并發數量,也就是多少個用戶同時訪問

2)Rame-Up Period(in seconds):控制每隔多少秒內發動并發

3)循環次數:用于設置線程組的循環次數

4)調度器:設置壓測的持續時間、延時時間

3.壓測結果查看

腳本運行完成后,可通過查看結果樹和聚合報告結果來顯示接口是否運行成功及壓測結果參數,主要關注的參數有:

1)Samples:表示一共發出的請求書

2)Average:平均響應時間,單位ms

3)Error%:測試出現的錯誤請求數量百分比

4)Throughput:吞吐量,簡稱tps,表示服務器每秒處理的請求數,tps越高說明服務器處理能力越好

4.最大tps及最大并發數的確定

1)最大tps:隨著并發數不斷增加,tps數值曲線會達到一定峰值后開始出現下降,那么這個峰值就是最大的tps。

2)最大的并發數:隨著并發數不斷增加,某個值之后,服務器開始出現請求超時,則這個值就是最大的并發數。

5.影響性能的主要參考因素主要包括:數據庫、應用程序、中間件、網絡和操作系統等方面。

三、壓力測試步驟

1.創建線程組

點擊選中測試計劃,右鍵點擊創建線程組

點擊線程組,這里可以設置名稱,添加注釋,設置線程數(每次有多少線程同時開啟)、線程響應時間(多少秒完成線程)、循環次數(每個線程數需要開啟幾次)等

2.創建取樣器(以HTTP為例)

點擊選中線程組,右鍵添加取樣器輸入協議

點擊剛設置的取樣器,這里可以設置名稱,設置http/https(不輸入默認為http),服務器IP,端口號(不輸入默認80端口),選擇HTTP請求類型,相關路徑(若無則不填),以下以百度為例

3.最后需要添加監聽器獲取監控結果

同樣選擇線程組,右鍵添加監聽器

常用的有匯總報告,察看結果樹,聚合報告

3.1匯總報告

這里可以看到每個請求以及總體的各項指標,我們要關注的是異常百分比和吞吐量,異常百分比越大,性能就越差,吞吐量越大效率越高

3.2察看結果樹

這里可以看到響應數據和請求內容,以及取樣器結果等

取樣器結果如下圖,請求欄有請求頭和請求數據,響應數據欄有響應頭和響應數據。

響應數據一般為HTML源碼,請求頭主要記錄的是時間,返回狀態等等數據,點擊Text右邊的三角形可以切換觀察的數據格式,如JSON等?

3.3聚合報告

這里能看的數據包含了匯總報告的內容,并且還能看到百分比響應時間等數據,相對于匯總報告,百分比響應是我們更需要關注的地方,如果不需要了解太深,就用匯總報告,需要了解更多的就需要用到聚合報告

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/215125.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/215125.shtml
英文地址,請注明出處:http://en.pswp.cn/news/215125.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

leetcode206. 反轉鏈表

題目描述 給你單鏈表的頭節點 head ,請你反轉鏈表,并返回反轉后的鏈表。 示例 1: 輸入:head [1,2,3,4,5] 輸出:[5,4,3,2,1]示例 2: 輸入:head [1,2] 輸出:[2,1]示例 3&#xf…

appium安卓app自動化,遇到搜索框無搜索按鈕元素時無法搜索的解決方案

如XX頭條,搜索框后面有“搜索”按鈕,這樣實現搜索操作較為方便。 但有些app沒有設置該搜索按鈕,初學者就要花點時間去學習怎么實現該功能了,如下圖。 這時候如果定位搜索框,再點擊操作,再輸入文本后&#x…

SpringBootWeb請求響應之前言及狀態碼的詳細解析

SpringBootWeb請求響應 前言 在上一次的課程中,我們開發了springbootweb的入門程序。 基于SpringBoot的方式開發一個web應用,瀏覽器發起請求 /hello 后 ,給瀏覽器返回字符串 “Hello World ~”。 其實呢,是我們在瀏覽器發起請求…

【算法與數據結構】332、LeetCode重新安排行程

文章目錄 一、題目二、解法三、完整代碼 所有的LeetCode題解索引,可以看這篇文章——【算法和數據結構】LeetCode題解。 一、題目 二、解法 思路分析:本題比較屬于困難題目,難點在于完成機票、出發機場和到達機場之間的映射關系,再…

使用yum/dnf管理軟件包

本章主要介紹使用 yum 對軟件包進行管理。 yum 的介紹搭建yum源創建私有倉庫yum客戶端的配置yum的基本使用使用第三方yum源 使用rpm安裝包時經常會遇到一個問題就是包依賴,如下所示。 [rootrhel03 ~]# rpm -ivh /mnt/AppStream/Packages/httpd-2.4.37-41.modulee…

【三維重建】對極幾何

極幾何描述了同一場景或者物體的兩個視點圖像間的幾何關系 可以發現P在左右相機的投影點一定在各自的極線上,如果求出極線就能縮小求解對應點的范圍。 本質矩陣對規范化攝像機拍攝的兩個視點圖像間的極幾何關系進行代數描述 規范化相機指的是相機的內參…

人工智能_機器學習063_SVR支持向量機_回歸擬合天貓雙十一銷量方程---人工智能工作筆記0103

之前我們用線性回歸做過天貓雙十一銷量預測的數據,現在我們再來用SVR支持向量機來做一下 首先上面是給出了銷量,對應2009年到2019年的,銷售額 可以看到: X=np.arange(2009,2020)-2008 統一減去2008的話看起來數據比較簡單了 y=np.array([0.5,9.36,52,191,350,571,912,1207,1…

華為OD機試 - 結隊編程(Java JS Python C)

題目描述 某部門計劃通過結隊編程來進行項目開發, 已知該部門有 N 名員工,每個員工有獨一無二的職級,每三個員工形成一個小組進行結隊編程,結隊分組規則如下: 從部門中選出序號分別為 i、j、k 的3名員工,他們的職級分貝為 level[i],level[j],level[k], 結隊小組滿足…

使用perl的Tie::File 模塊刪除文件固定行

使用perl的Tie::File 模塊刪除文件固定行, 為了說明簡單代碼中處理的是固定第二行開始的3行長度。下面給出perl代碼: #! /usr/bin/perl use v5.14; use Tie::File;if (ARGV 0) {say "請輸入一個文件名 !!!";exit 1; }my $filePath $ARGV[0]; tie my ar…

java工程(ajax/axios/postman)向請求頭中添加消息

1、問題概述 在項目中我們經常會遇到需要向請求頭中添加消息的場景,然后后端通過request.getRequest()或者RequestHeader獲取請求頭中的消息。 下面提供幾種前端向請求頭添加消息的方式 2、創建一個springmvc工程用于測試 2.1、創建工程并引入相關包信息 sprin…

C++之STL算法(1)

STL容器算法主要由、、組成; ??algorithm主要有遍歷、比較、交換、查找、拷貝、修改等; 1.遍歷容器for_each for_each()函數用于完成容器遍歷,函數參數如下: for_each(_InIt _First, _InIt _Last, _Fn _Func) 形參&#xff1a…

深度學習 Day10——T10數據增強

🍨 本文為🔗365天深度學習訓練營 中的學習記錄博客🍖 原作者:K同學啊 | 接輔導、項目定制 文章目錄 前言一、我的環境二、代碼實現與執行結果1.引入庫2.設置GPU(如果使用的是CPU可以忽略這步)3.導入數據4.查…

4-Docker命令之docker update

1.docker update介紹 docker update命令是用于更新一個或多個docker容器的配置 2.docker update用法 docker update [參數] container [container......] [root@centos79 ~]# docker update --helpUsage: docker update [OPTIONS] CONTAINER [CONTAINER...]Update configu…

編寫函數計算一個或不特定多個數的乘積

編寫函數計算一個或不特定多個數的乘積 輸入樣例: 3 2 1 輸出樣例: 6.0000 def caculate(*t):r1for x in t:r*xreturn r s input().split() t [float(x) for x in s] print("%.4f" % caculate(*t))

Docker基礎概念解析:鏡像、容器、倉庫

當談到容器化技術時,Docker往往是第一個被提及的工具。Docker的基礎概念涵蓋了鏡像、容器和倉庫,它們是理解和使用Docker的關鍵要素。在這篇文章中,將深入探討這些概念,并提供更豐富的示例代碼,幫助大家更好地理解和應…

智能優化算法應用:基于混合蛙跳算法3D無線傳感器網絡(WSN)覆蓋優化 - 附代碼

智能優化算法應用:基于混合蛙跳算法3D無線傳感器網絡(WSN)覆蓋優化 - 附代碼 文章目錄 智能優化算法應用:基于混合蛙跳算法3D無線傳感器網絡(WSN)覆蓋優化 - 附代碼1.無線傳感網絡節點模型2.覆蓋數學模型及分析3.混合蛙跳算法4.實驗參數設定5.算法結果6.…

2023年華為HCIA認證H12-811題庫講解

在VRP平臺上,可以通過下面哪種方式返回到上一條歷史命令?( ) A、Ctr1U B、Ctr1P C、左光標 D、上光標 試題答案:BD 試題解析:在VRP系統中,ctrlU為自定義快捷鍵,ct…

路由和網絡周期

### 路由(Routing): 1. **路由的概念:** 路由是用于確定用戶在網站或應用程序中所處位置的機制。它可以將不同的 URL 映射到對應的頁面或視圖組件,使得用戶可以通過不同的 URL 訪問不同的內容。 2. **路由器&#xf…

DevEco Studio 3.1IDE環境配置(HarmonyOS 3.1)

DevEco Studio 3.1IDE環境配置(HarmonyOS 3.1) 一、安裝環境 操作系統: Windows 10 專業版 IDE:DevEco Studio 3.1 SDK:HarmonyOS 3.1 二、環境安裝 IDE下載地址:HUAWEI DevEco Studio和SDK下載和升級 | HarmonyOS開發者 IDE的安裝就是…

Android---Kotlin 學習002

聲明變量 在 Kotlin 中定義一個變量,通過關鍵字 var 開始。然后是變量名,在“:”后緊跟變量類型。 示例1:聲明一個 int 類型的變量 var num:Int 1 示例2:聲明一個 String 類型的變量 var str:String "Hello world&quo…