JMeter(4) 使用JDBC查詢mysql數(shù)據(jù)庫(kù)

準(zhǔn)備

  1. 連Linux機(jī)器上的MySQL數(shù)據(jù)庫(kù),要通過SSH隧道鏈接。

SSH的英文全稱是Secure Shell.傳統(tǒng)的網(wǎng)絡(luò)服務(wù)程序,如:FTP和telnet在本質(zhì)上都是不安全的, 因?yàn)樗鼈冊(cè)诰W(wǎng)絡(luò)上用明文傳送口令和數(shù)據(jù),別有用心的人非常容易就可以截獲這些口令和數(shù)據(jù)。而通過使用SSH客戶端與服務(wù)器端通訊時(shí),用戶名及口令均進(jìn)行了 加密,有效防止了對(duì)口令的竊聽。同時(shí)通過SSH的數(shù)據(jù)傳輸是經(jīng)過壓縮的,所以可以提高數(shù)據(jù)的傳輸速度.

  1. SecureCRT介紹
    這是一款支持SSH(SSH1和SSH2)的終端仿真程序,簡(jiǎn)單地說是Windows或者M(jìn)ac下登錄UNIX或Linux服務(wù)器主機(jī)的軟件。
    有些教程使用putty,但是在(1)win上試用發(fā)現(xiàn)putty沒有SecureCRT那么可視化;(2)putty不支持mac,遂棄之~

配置SecureCRT

  1. 打開SecureCRT


  2. 新建ssh連接
    connect->session manager->new session




    下一步輸入ssh連接密碼,保存,雙擊該連接,看到連接ok


  3. 數(shù)據(jù)庫(kù)信息填寫
    點(diǎn)擊鏈接右鍵 -> properties -> port forwarding -> add



    上面的跳轉(zhuǎn)端口可以設(shè)置為8181,瀏覽器訪問localhost:8181,可以看到提示下載文件,說明該端口設(shè)置ok。此端口待會(huì)用于jmeter連接跳轉(zhuǎn)

JDBC連接

  • 添加需要的驅(qū)動(dòng)jar包
    連接不同類型的數(shù)據(jù)庫(kù)需要下載不同的驅(qū)動(dòng)。mysql需要下載jdbc mysql driver,拷貝到j(luò)meter->lib下面
  • 添加 JDBC Connection Configuration


Variable Name:數(shù)據(jù)庫(kù)連接池的名稱,我們可以有多個(gè)jdbc connection configuration,每個(gè)可以起個(gè)不同的名稱,在jdbc request中可以通過這個(gè)名稱選擇合適的連接池進(jìn)行使用。
Database URL:數(shù)據(jù)庫(kù)url,jdbc:mysql://主機(jī)ip或者機(jī)器名稱:mysql監(jiān)聽的端口號(hào)/數(shù)據(jù)庫(kù)名稱
JDBC Driver class:JDBC驅(qū)動(dòng)com.mysql.jdbc.Driver
username:數(shù)據(jù)庫(kù)登陸的用戶名
passwrod:數(shù)據(jù)庫(kù)登陸的密碼
不同數(shù)據(jù)庫(kù)具體連接方式如下:

Datebase Driver class Database URL
MySQL com.mysql.jdbc.Driver jdbc:mysql://host:port/{dbname}
PostgreSQL org.postgresql.Driver jdbc:postgresql:{dbname}
Oracle oracle.jdbc.driver.OracleDriver jdbc:oracle:thin:user/pass@//host:port/service
Ingres (2006) ingres.jdbc.IngresDriver jdbc:ingres://host:port/db[;attr=value]
MSSQL com.microsoft.sqlserver.jdbc.SQLServerDriver或者net.sourceforge.jtds.jdbc.Driver jdbc:sqlserver://IP:1433;databaseName=DBname或者jdbc:jtds:sqlserver://localhost:1433/"+"library"
  • 配置JDBC Request


  1. 增加結(jié)果樹,運(yùn)行,查看結(jié)果,ok~


實(shí)例

案例:新增topic,取上一個(gè)請(qǐng)求的響應(yīng)里面用正則表達(dá)式提取變量topic_id,跟mysql查詢結(jié)果進(jìn)行斷言
Apply toJMeter Variable: name_1
Patterns to Test:${KEYWORD}


JDBC請(qǐng)求里面提取查詢結(jié)果

斷言,切記這里是name_1

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容