国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Jmeter接口測試與壓力測試

這篇具有很好參考價值的文章主要介紹了Jmeter接口測試與壓力測試。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

?? 視頻學習:文末有免費的配套視頻可觀看

???關注公眾號:互聯(lián)網雜貨鋪,回復1?,免費獲取軟件測試全套資料,資料在手,漲薪更快

Jmeter是apache公司基于java開發(fā)的一款開源壓力測試工具,體積小,功能全,使用方便,是一個比較輕量級的測試工具,使用起來非常簡單。因 為jmeter是java開發(fā)的,所以運行的時候必須先要安裝jdk才可以。jmeter是免安裝的,拿到安裝包之后直接解壓就可以使用,同時它在 linux/windows/macos上都可以使用。

jmeter可以做接口測試和壓力測試。其中接口測試的簡單操作包括做http腳本(發(fā)get/post請求、加cookie、加header、加權 限認證、上傳文件)、做webservice腳本、參數化、斷言、關聯(lián)(正則表達式提取器和處理json-json path extractor)和jmeter操作數據庫等等。

接口測試

Jmeter-http接口腳本

一般分五個步驟:

(1)添加線程組

(2)添加http請求

(3)在http請求中寫入接入url、路徑、請求方式和參數

(4)添加查看結果樹

(5)調用接口、查看返回值

jmeter 發(fā)get請求

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

jmeter 發(fā)post請求

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

jmeter 添加cookie

需要在線程組里添加配置元件—HTTP Cookie 管理器

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

jmeter 添加header

需要在線程組里面添加配置元件—HTTP信息頭管理器

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

jmeter 上傳文件

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

jmeter 參數化

入參經常變化的話,則可以設置成一個變量,方便統(tǒng)一修改管理;如果入參要求隨機或可多種選擇,則通過函數生成器或者讀取文件形成一個變量。所以參數化有三種方式:用戶定義的變量、函數生成器、讀取文件。

(1)用戶定義的變量

需要添加配置元件-用戶定義的變量。

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

(2)函數生成器

需要用到函數助手功能,可以調用函數生成一些有規(guī)則的數據。常用的幾個函數有_uuid、_random、_time。_uuid會生成一個隨機唯一 的id,比如在避免java請求重發(fā)造成未處理數據太多的情況,接口請求可加一個唯一的請求id唯一的響應id進行一一對應;隨機數_random,可以 在你指定的一個范圍里取隨機值;取當前時間_time,一些時間類的入參可以使用,如{__time(,)} 是生成精確到毫秒的時間戳、{__time(/1000,)}是生成精確到秒的時間戳、${__time(yyyy-MM-dd HH:mm:ss,)} 是生成精確到秒的當前時間。

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

(3)從文件讀取

需要在線程組里面添加配置元件-CSV Data Set Config

其中Recycle on EOF:設置True后,允許循環(huán)取值

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

具體的例子如下所示:

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

jmeter 斷言

jmeter斷言用來檢測響應返回的結果和我們預期的是否一致。若針對整個線程組的話,則在線程組下添加斷言-響應斷言;若只是針對某個請求的話,則在請求下添加斷言-響應斷言。

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

jmeter關聯(lián)

接口請求之間存在參數調用,為了保存這個參數,建立jmeter關聯(lián)。比如登陸接口和購買商品接口,購買商品接口就需要登陸接口返回的token等登陸信息,jmeter關聯(lián)就可以保存這個token信息,方便購買商品接口使用。

jmeter關聯(lián)可以通過二種方式來完成,獲取到返回結果中指定的值。它們分別是正則表達式提取器、 json path extractor。

(1)正則表達式提取器

若想獲取的返回值未匹配到,可以把正則表達式兩邊匹配的數據擴大點。

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

a. 關于正則表達式

():括起來的部分就是要提取的。
.:匹配除換行外的任何字符串。
+:代表+號前面的字符必須至少出現(xiàn)一次(一次或多次)。
?:代表?前面的字符最多可以出現(xiàn)一次,在找到第一個匹配項后停止(0次或1次)。
:代表號前面的字符可以不出現(xiàn),也可以出現(xiàn)一次或者多次(0次、1次或者多次)
(.*):貪婪模式,匹配盡可能多的字符
(.*?)或(.+?):匹配盡可能少的字符,一旦匹配到第一個就不往下走了。

b. 關于模板

若想提取多個值的話,比如是a和b這兩個值,則可以寫成:$1$$2$。無論要提取多少個值,引用名稱就是一個的,比如名稱為id,${id_go}:獲取整個字符串ab,${id_g1}:獲取的是a,${id_g2}:獲取的是b。

下面有一個具體的實例,如下圖所示:

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

(2)json path extractor

jmeter通過安裝json path extractor插件來處理json串,提取json串中的字段值。插件的下載地址:JMeter Plugins :: JMeter-Plugins.org,下載完成,解壓后,直接把lib文件夾放到jmeter相應目錄下面。特別說明:jmeter 2.xx左右的版本嘗試過無法使用該插件,在jmeter 3.xx左右的版本裝完插件后能正常使用。

需要在請求下創(chuàng)建后置處理器-jp@gc-JSON Path Extractor,具體的實例如下所示:

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

jmeter 操作數據庫

操作數據庫基本有四個步驟:

(1)導入mysql的jdbc的jar包

(2)創(chuàng)建數據庫的連接配置,線程組里添加配置元件-JDBC Connection Configuration

(3)線程組里添加jdbc request,寫sql語句

(4)添加察看結果樹,點擊啟動按鈕,就能看到執(zhí)行的SQL。

具體的實例如下截圖所示:

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

特別說明:jmeter還可以操作oracle、postgreSQL、msSQL、mongodb等等數據庫,同時不同的數據庫,JDBC Connection Configuration填寫的Database url格式和JDBC Driver驅動名稱也不相同。jmeter數據庫驅動列表如下表所示:

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

Jmeter-webservice接口腳本

基本分為五個步驟:

(1)先需要通過soapui工具獲取到webservice接口的請求地址、請求報文和請求soapaction。

(2)jmeter新建一個線程組

(3)線程組下建立SOAP/XML-RPC Request,寫入請求url、請求報文、請求soapaction。

(4)啟動jmeter,調用接口,通過察看結果樹查看返回值。

soapui獲取信息的實例如下圖所示:

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

soapui提交完后,點擊raw,可看到soapation,有些接口若沒返回soapation,則jmeter里也就不用填。

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

jmeter-webservice腳本實例如下圖所示:

Jmeter接口測試與壓力測試,壓力測試,python,軟件測試,自動化測試,接口測試,jmeter,測試工具

壓力測試

壓力測試分兩種場景:一種是單場景,壓一個接口的;第二種是混合場景,多個有關聯(lián)的接口。壓測時間,一般場景都運行10-15分鐘。如果是疲勞測試,可以壓一天或一周,根據實際情況來定。

壓測任務需求的確認

壓測前要明確壓測功能和壓測指標,一般需要確定的幾個問題:

  • 固定接口參數進行壓測還是進行接口參數隨機化壓測?
  • 要求支持多少并發(fā)數?
  • TPS(每秒鐘處理事務數)目標多少?響應時間要達到多少?
  • 壓服務器名稱還是壓服務器IP,一般都是壓測指定的服務器

壓測設置

  • 線程數:并發(fā)數量,能跑多少量。具體說是一次存在多少用戶同時訪問
  • Rame-Up Period(in seconds):表示JMeter每隔多少秒發(fā)動并發(fā)。理解成準備時長:設置虛擬用戶數需要多長時間全部啟動。如果線程數是20,準備時長為10,那么需要10秒鐘啟動20個數量,也就是每秒鐘啟動2個線程。
  • 循環(huán)次數:這個設置不會改變并發(fā)數,可以延長并發(fā)時間??傉埱髷?線程數*循環(huán)次數
  • 調度器:設置壓測的啟動時間、結束時間、持續(xù)時間和啟動延遲時間。

壓測結果查看

運行完后,聚合報告會顯示壓測的結果。主要觀察Samples、Average、error、Throughput。

  • Samples:表示一共發(fā)出的請求數
  • Average:平均響應時間,默認情況下是單個Request的平均響應時間(ms)
  • Error%:測試出現(xiàn)的錯誤請求數量百分比。若出現(xiàn)錯誤就要看服務端的日志,配合開發(fā)查找定位原因
  • Throughput:簡稱tps,吞吐量,默認情況下表示每秒處理的請求數,也就是指服務器處理能力,tps越高說明服務器處理能力越好。

壓測結果的分析

  • 有錯誤率同開發(fā)確認,確定是否允許錯誤的發(fā)生或者錯誤率允許在多大的范圍內;
  • Throughput吞吐量每秒請求的數大于并發(fā)數,則可以慢慢的往上面增加;若在壓測的機器性能很好的情況下,出現(xiàn)吞吐量小于并發(fā)數,說明并發(fā)數不能再增加了,可以慢慢的往下減,找到最佳的并發(fā)數;
  • 壓測結束,·登陸相應的web服務器查看CPU等性能指標,進行數據的分析;
  • 最大的tps:不斷的增加并發(fā)數,加到tps達到一定值開始出現(xiàn)下降,那么那個值就是最大的tps。
  • 最大的并發(fā)數:最大的并發(fā)數和最大的tps是不同的概率,一般不斷增加并發(fā)數,達到一個值后,服務器出現(xiàn)請求超時,則可認為該值為最大的并發(fā)數。
  • 壓測過程出現(xiàn)性能瓶頸,若壓力機任務管理器查看到的cpu、網絡和cpu都正常,未達到90%以上,則可以說明服務器有問題,壓力機沒有問題。
  • 影響性能考慮點包括:數據庫、應用程序、中間件(tomact、Nginx)、網絡和操作系統(tǒng)等方面。

jmeter在linux下進行壓力測試

jmeter 在linux安裝

簡單說下,就是要先安裝jdk,同時再配置環(huán)境變量,最后再上傳jmeter壓縮的安裝包,在linux下解壓完安裝包就可以使用了。推薦博客:Linux 下 安裝 Jmeter_jimiterlinuxban下載-CSDN博客

jmeter在linux運行

進入jmeter下的bin目錄下運行腳本,未配置jmeter環(huán)境變量的條件下,運行的命令:

./jmeter -n -t a.jmx -l res.jtl

其中a.jmx是準備好的jmeter腳本,res.jtl是測試結果文件,測試結果文件可以導入到jmeter察看結果樹下查看。

同時,在這我為大家準備了一份軟件測試視頻教程(含面試、接口、自動化、性能測試等),就在下方,需要的可以直接去觀看,也可以直接【點擊文末小卡片免費領取資料文檔】

2024全網最牛,字節(jié)大佬花了一周講完的自動化測試全套教程,從零開始教你成為年薪百萬測開工程師文章來源地址http://www.zghlxwxcb.cn/news/detail-856215.html

到了這里,關于Jmeter接口測試與壓力測試的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 軟件測試高頻面試題(2023全新版)你必須掌握的面試技巧,包含HR面試、基礎面試、JMeter面試、Postman面試、Python面試、自動化化面試、安全性能面試題

    1.1 面試技巧 ?? 告誡給位小伙伴,技巧不是投機取巧,起到輔助作用,技術面主要看實力,這里是基于實力之上的技巧 1.2 面試形式 ?? 面試形式分為技術面和 HR 面,技術面就是考察你的專業(yè)技術水平的,HR 面主要看你這個人的綜合素質以及家庭情況符不符合公司要求(一般

    2024年02月11日
    瀏覽(22)
  • 軟件測試:功能測試-接口測試-自動化測試-性能測試-驗收測試

    軟件測試:功能測試-接口測試-自動化測試-性能測試-驗收測試

    軟件測試的主要流程 一、測試主要的四個階段 1.測試計劃設計階段 :產品立項之后,進行需求分析,需求評審,業(yè)務需求評級,繪制業(yè)務流程圖。確定測試負責人,開始制定測試計劃; 2.測試準備階段 :各成員編寫測試用例、先小組內評審、后會議評審,測試樣機和配件,

    2024年02月08日
    瀏覽(33)
  • 軟件測試面試題——接口自動化測試怎么做?

    面試過程中,也問了該問題,以下是自己的回答: 接口自動化測試,之前做過,第一個版本是用jmeter 做的,1 主要是將P0級別的功能接口梳理出來,根據業(yè)務流抓包獲取相關接口,并在jmeter中跑通,2 是整理了項目上的所有接口,先將單個接口跑通,然后再編寫不同的接口用

    2024年02月14日
    瀏覽(27)
  • 自動化測試實戰(zhàn)篇(8),jmeter并發(fā)測試登錄接口,模擬從100到1000個用戶同時登錄測試服務器壓力

    自動化測試實戰(zhàn)篇(8),jmeter并發(fā)測試登錄接口,模擬從100到1000個用戶同時登錄測試服務器壓力

    進程是資源分配最小單位,線程是程序執(zhí)行的最小單位; 每個進程內部會有N個線程,但至少要有1個線 程。 比如公司就是一個進程,公司的員工就是線程。 線程占用的資源要?進程少很多。 線程之間通信比進程更方便 并發(fā)是指在一個時間段內有多個進程在執(zhí)行 并行指的是

    2024年02月16日
    瀏覽(24)
  • 軟件測試過程中如何有效的開展接口自動化測試

    接口自動化測試是指使用自動化測試工具和腳本對軟件系統(tǒng)中的接口進行測試的過程。其目的是在軟件開發(fā)過程中,通過對接口的自動化測試來提高測試效率和測試質量,減少人工測試的工作量和測試成本,并且能夠快速發(fā)現(xiàn)和修復接口錯誤,確保軟件系統(tǒng)的穩(wěn)定性和可靠性

    2024年02月08日
    瀏覽(33)
  • 2023軟件測試工具大全(自動化、接口、性能、安全、測試管理)

    2023軟件測試工具大全(自動化、接口、性能、安全、測試管理)

    目錄 前言 一、自動化測試工具 Selenium Appium TestComplete 二、接口測試工具 Postman SoapUI JMeter 三、性能測試工具 LoadRunner JMeter Gatling 四、安全測試工具 Burp Suite OWASP ZAP Nmap 五、測試管理工具 TestRail JIRA TestLink 總結 軟件測試是保障軟件質量的重要環(huán)節(jié),而現(xiàn)代化的軟件開發(fā)過程中

    2024年02月16日
    瀏覽(31)
  • 接口測試 再也不必來回切換,發(fā)現(xiàn)一個接口測試軟件,可以替代 Swagger+Mock+Jmeter+Postman

    接口測試 再也不必來回切換,發(fā)現(xiàn)一個接口測試軟件,可以替代 Swagger+Mock+Jmeter+Postman

    日常測試過程中,常常需要多種工具來接力完成自己的接口測試任務。 比如說, 使用swagger查看接口文檔, 使用mock編造接口數據對前端頁面做測試 使用postman測試后端接口, 用Jmeter來做接口自動化測試/性能測試。 那有沒有一款軟件可以完美集成以上所有的功能? 筆者發(fā)現(xiàn)

    2024年02月15日
    瀏覽(21)
  • 軟件測試(功能、接口、性能、自動化)詳解

    軟件測試(功能、接口、性能、自動化)詳解

    測試用例編寫是軟件測試的基本技能;也有很多人認為測試用例是軟件測試的核心;軟件測試中最重要的是設計和生成有效的測試用例;測試用例是測試工作的指導,是軟件測試的必須遵守的準則。 黑盒測試常見測試用例編寫方法 1、等價類 選取少數有代表性的數據,這一類

    2024年02月13日
    瀏覽(30)
  • 在軟件測試過程中如何有效的開展接口自動化測試

    接口自動化測試是指使用自動化測試工具和腳本對軟件系統(tǒng)中的接口進行測試的過程。其目的是在軟件開發(fā)過程中,通過對接口的自動化測試來提高測試效率和測試質量,減少人工測試的工作量和測試成本,并且能夠快速發(fā)現(xiàn)和修復接口錯誤,確保軟件系統(tǒng)的穩(wěn)定性和可靠性

    2024年02月03日
    瀏覽(30)
  • 軟件測試(功能、工具、接口、性能、自動化、測開)詳解

    軟件測試(功能、工具、接口、性能、自動化、測開)詳解

    一、軟件測試功能測試 測試用例編寫是軟件測試的基本技能;也有很多人認為測試用例是軟件測試的核心;軟件測試中最重要的是設計和生成有效的測試用例;測試用例是測試工作的指導,是軟件測試的必須遵守的準則。 黑盒測試常見測試用例編寫方法 1、等價類 選取少數

    2024年02月07日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包