jmeter之JDBC類組件


什么是JDBC?:全稱名為Java DataBase Connectivity,(java數據庫連接),在jmeter中是一種可以遠程操作數據庫的一類組件。

jmeter如何操作數據庫?:jmeter是一款java應用,一般都是通過JDBC方式來實現;

  *准備工作:jmeter操作數據庫需要JDBC驅動包,但下載的jmeter本身沒有提供任何的JDBC驅動包,需要另外下載。

  *JDBC獲取途徑:可以找開發,可以去官網下載(地址:https://dev.mysql.com/downloads/connector/j/),需要注意的是,如果你是做性能測試的,JDBC的驅動包版本一定要下對,否則性能的瓶頸原因可能就出現版本號不一致上。如果是自動化,下載的驅動包版本比你數據庫版本高即可,低於的話可能會導致連接報錯。

  *如何安裝驅動包?請查看該篇文章:https://www.cnblogs.com/FBGG/p/11758565.html

 

jmeter中和數據操作有關的組件幾個?他們的作用是什么?:四個,作用如下

  *JDBC Connection Configuration:(JDBC連接配置)組件,屬於必選組件。當需要連接多個庫時,可以添加多個。添加路徑(配置元件)>(JBDC Connection Configuration)

  *JDBC Request:(JDBC請求),用於輸入sql數據操作數據庫。路徑(線程組)(取樣器)>(JDBC Request)

  *JDBC PreProcessor:(JDBC預處理器),功能與JDBC Request類似,只不過這是在運行請求之前執行。路徑(前置處理器)>(JDBC PreProcessor)

  *JDBC PostProcessor:(JDBC后處理器),功能與JDBC Request類似,只不過這是在運行請求之后執行。路徑(后置處理器)>(JDBC PostProcessor)

 

JDBC Connection Configuration 配置講解?: 添加路徑(配置元件)>(JBDC Connection Configuration)

  *Variable Name:(變量名稱),用來存儲連接配置信息,后續的JDBC請求,JDBC前、后置處理器都需要用到。建議格式(庫名_主機ip:TestJdbc_192)

  *connestion Pool Configuration:(連接池配置),這塊信息之和性能測試有關,一般不用操作,在此不作深度解析。

  *connestion Validation by pool:(連接池驗證),有用的只有Validation Query(驗證查詢),這個直接選,一般mysql就選select 1

  *JDBC Connection Configuration:(JDBC連接配置)信息(重點)

    *Database URL:數據庫的URL地址,不同類型的數據庫JDBC的URL寫法是不一樣的。可以從官網查看每個不同數據庫的配置方法

 

 

分割線~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    *JDBC Driver class:JDBC驅動類的路徑。不同數據庫的驅動類不一樣,需要根據自身情況選擇。這個路徑從哪里來呢?請看下圖

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 分割線~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  *Username:用戶名。數據庫的用戶名,這個不多說了,復制粘貼就行

  *Password:密碼。數據庫的密碼。,這個不多說了,復制粘貼就行

 

 

 JDBC Request  配置講解:路徑(線程組)(取樣器)>(JDBC Request)

   *Variable Name......:該處填寫的是在JBDC Connection Configuration 中所定義的變量名稱,表示使用對應的JDBC 數據庫連接配置。(因為JBDC Connection Configuration可以是多個,想連哪個就使用哪個變量名)

  *Query Type:請求類型,要求實際執行的SQL和所選的Query Type(請求類型)一致。可選的值和描述如下

    *Select statement:select類型,對應可執行的SQL關鍵字有(select),也就是只能使用這些關鍵字進行操作數據庫

    *Updata Statement:updata類型,對應可執行的SQL關鍵字有(create、drop、alter:針對表結構調整)(install、delet、updata:針對表數據調整),也就是只能使用這些關鍵字進行操作數據庫

    *Callable Statement:Callable類型,支持所有的關鍵字,主要用於存儲過程的調用。對應可執行的關鍵字有,可以認為是call,所有。也就是所有類型的sql語句都支持

    *Prepared Select statement:前置select類型,又叫批量select類型。對應可執行的SQL關鍵字和Select statement完成一樣。

    *Prepared updata statement:前置select類型,又叫批量updata類型。對應可執行的SQL關鍵字和Updata statement完成一樣。

    PS:(Prepared Select statement)和(Prepared updata statement)屬於Prepared類型,支持在sql語句中通過問號?來實現參數的占位和傳遞。該功能可以節約數據庫的性能資源。主要用作性能測試,非性能測試不必要用。Prepared類型需要用到下方的兩個屬性來實現,請看截圖描述

      *Parameter values:參數值。s代表可以填寫多個;參數值的個數,類型要求和sql語句中的問號所在的值保持一致;參數值之間使用逗號進行分隔。

      *Parameter types:參數類型。s代表可以填寫多個;參數類型的個數、類型值要求與參數保持一致;假如參數值是數字類型,則參數類型就為int,假如是字符串,則參數類型就為float;參數類型之間也是用逗號進行分隔。

 

*Variable names:變量名稱s。

  *該處的變量名稱由用戶自定義,建議用有意義命名格式。

  *如s所表示,變量名可以有多個,使用逗號進行分隔。

  *所定義的變量是用來存儲查詢結果的。

  *每一個變量對應的查詢結果的一列值,按照變量名順序一一對應;即N個查詢結果對應N個變量名,注意是按列來對應,一個變量存一列值,也就是如果你查詢的結果中返回的有兩個列,id和name,那你的變量名需要寫兩個來對應,一個存儲id列的所有值,一個存儲name列的所有值。可以看截圖腦補

  *值的存儲是采用類似於數組的方式來實現。如列變量_1,列變量_2......列變量_N。

 

圖片分隔線~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

 

到此,JDBC類組件講解完成!!!!!

 


免責聲明!

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



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