jmeter不僅可以對接口進行測試,還可以直接對后端的數(shù)據(jù)庫壓力測試
一帆阳、工作準備:
1哺壶、數(shù)據(jù)庫的訪問地址、用戶名蜒谤、密碼
2山宾、可用的網(wǎng)絡(luò)
3、數(shù)據(jù)庫驅(qū)動軟件
二鳍徽、jmeter組件的搭建及配置
1资锰、在進行操作前先將數(shù)據(jù)庫驅(qū)動軟件放入jmeter的\Lib\ext下面
2、打開jmeter阶祭,添加線程組绷杜、配置元件JDBC Connection Configuration、sampler的JDBC Request濒募、監(jiān)聽器的聚合報告接剩、查看結(jié)果樹(主要用于查看數(shù)據(jù)是否正確)
3、打開JDBC configuration 萨咳,在頁面中填寫相關(guān)的配置信息
Variable Name懊缺,數(shù)據(jù)庫連接池的變量名,之后JDBC request可以通過選擇不同的連接池名來選擇不同的數(shù)據(jù)庫連接
.Database URL:數(shù)據(jù)庫地址
JDBC Driver class:根據(jù)連接的數(shù)據(jù)庫固定為com.mysql.jdbc.Driver或oracle.jdbc.OracleDriver
Username:用戶名
Password:密碼
其他信息保持不變
4培他、配置JDBC Request
一般在進行request配置時鹃两,先在數(shù)據(jù)庫中驗證SQL語句的正確性:
配置request
Variable Name:上一步創(chuàng)建好的數(shù)據(jù)庫連接池的名字 (mysql)
QUery:執(zhí)行的語句
Parameter value:要執(zhí)行的sql語句里面設(shè)置傳入的參數(shù)值
Parameter Types:參數(shù)類型
Variable Name:可以用來存儲查詢的值,如IP
在jmeter中引用時舀凛,需要加行號俊扳,比如${IP_Id_1}代表IP列第一行的值
三、運行結(jié)果
1猛遍、查看結(jié)果樹中確認腳本正確
2馋记、聚合報告中号坡,查看具體的性能參數(shù)
根據(jù)不同場景設(shè)置不同的SQL以及執(zhí)行的線程組,可以對表的查詢速度做一個測試梯醒,在實際的業(yè)務(wù)中宽堆,很多操作其實是對數(shù)據(jù)庫的多表復(fù)雜查詢,均可以通過此種方法進行測試茸习。
對于查詢的數(shù)據(jù)也可以進行參數(shù)化引用
四畜隶、對數(shù)據(jù)庫查詢數(shù)據(jù)的參數(shù)化引用
數(shù)據(jù)的參數(shù)化方式,有多種可參見(學(xué)習(xí)6)号胚,根據(jù)自己的需要進行選擇籽慢,此處我們選擇benshell 的方式進行參數(shù)化
在原有的場景中添加組件:http請求、http信息頭(post方式需要添加)
此處vars.getobject(IP)猫胁,配置request中的IP的文件
vars.getobject(IP).get(ip).get(ip) :表示獲取文件名為IP中的 列名為:ip 的3行的數(shù)據(jù)(起始值為0)