JMeter-- 創(chuàng)建一個數(shù)據(jù)庫測試計劃

6. 創(chuàng)建一個數(shù)據(jù)庫測試計劃(Building a Database Test Plan)


在本節(jié)中,您將學習如何創(chuàng)建一個測試數(shù)據(jù)庫服務器的基本測試計劃异旧。您將創(chuàng)建50個向數(shù)據(jù)庫服務器發(fā)送2個SQL請求的用戶。同時宣吱,您將告訴用戶運行他們的測試100次蓉冈。因此,請求的總數(shù)是(50個用戶)x(2個請求)x(重復100次)= 10,000個JDBC請求钧唐。要構(gòu)造測試計劃忙灼,您將使用以下元素:線程組(參考文章JMeter--測試計劃的要素3.1節(jié))、JDBC請求摘要報告该园。

Summary Report

本例使用MySQL數(shù)據(jù)庫驅(qū)動程序酸舍。要使用這個驅(qū)動程序,必須將其包含.jar文件(比如 mysql-connector-java- x.x . x. x-bin.jar)復制到JMeter ./lib目錄(更多細節(jié)請參見JMeter's Classpath)里初。

?

6.1 添加用戶(Adding Users)


對每個JMeter測試計劃要做的第一步是添加一個線程組元素啃勉。線程組告訴JMeter要模擬的用戶數(shù)量、用戶應該發(fā)送請求的頻率以及他們應該發(fā)送多少請求双妨。

繼續(xù)添加ThreadGroup元素首先選擇測試計劃(Test Plan),點擊你的鼠標右鍵添加(add)菜單,然后選擇 添加線程組(ThreadGroup)淮阐。

您現(xiàn)在應該看到在測試計劃下的Thread Group元素。如果您沒有看到該元素刁品,那么單擊Test Plan元素的小箭頭“展開”測試計劃樹泣特。

接下來,需要修改默認屬性挑随。選擇樹中的Thread Group元素状您,如果您還沒有選擇它。您現(xiàn)在應該可以在JMeter窗口的右邊看到Thread Group控制面板(參見下面的圖6.1)镀裤。

圖6.1. Thread Group with Default Values

首先為我們的線程組提供一個更具描述性的名稱竞阐。在name(名稱)字段中,輸入JDBC用戶名(即該測試計劃的名稱)暑劝。

您將需要一個有效的數(shù)據(jù)庫骆莹、數(shù)據(jù)庫表和對該表的用戶級訪問。在這里顯示的示例中担猛,數(shù)據(jù)庫是“cloud”幕垦,表名是“vm_instance”。
編者注:數(shù)據(jù)庫是由一個個表(table)組成傅联。

接下來先改,將用戶數(shù)量增加到50個。

在下一個字段中蒸走,過渡周期(Ramp-Up Period)仇奶,設置值為10秒。此屬性告訴JMeter在啟動每個用戶之間要延遲多長時間比驻。例如该溯,如果您輸入10秒的過渡周期,JMeter將在10秒結(jié)束前啟動所有用戶别惦。因此狈茉,如果我們有50個用戶和10秒的加速周期,那么啟動用戶之間的延遲將為200毫秒(10秒/ 50個用戶= 0.2個用戶/秒)掸掸。如果將值設置為0氯庆,則JMeter將立即啟動所有用戶蹭秋。

最后,在循環(huán)次數(shù)(Loop Count)字段中輸入100的值堤撵。這個屬性告訴JMeter重復測試多少次仁讨。要讓JMeter重復運行您的測試計劃,請選擇“永遠(Forever)”復選框粒督。

在大多數(shù)應用程序中陪竿,您必須手動接受在控制面板中進行的更改。然而屠橄,在JMeter中族跛,控件面板在您進行更改時自動接受您的更改。如果您更改了一個元素的名稱锐墙,那么在離開控制面板(例如礁哄,在選擇另一個樹元素時)之后,樹將使用新的文本進行更新溪北。

完整的JDBC用戶線程組請參見圖6.2桐绒。


圖 6.2. JDBC Users Thread Group

?

6.2 添加JDBC請求 (Adding JDBC Requests)


既然我們已經(jīng)定義了用戶,現(xiàn)在是時候定義他們將要執(zhí)行的任務了之拨。在本節(jié)中茉继,您將指定要執(zhí)行的JDBC請求。

首先選擇JDBC用戶元素蚀乔。點擊你的鼠標右鍵添加菜單,然后選擇添加配置元件JDBC Connection Configuration
烁竭。然后,選擇這個新元素以查看它的控制面板(參見圖6.3)吉挣。

設置以下字段(假設我們將使用一個名為“cloud”的MySQL數(shù)據(jù)庫):

  • 綁定到池的變量名(Variable name)(比如:myDatabase)派撕。這需要惟一地標識配置。JDBC采樣器使用它來識別要使用的配置睬魂。
  • mysql數(shù)據(jù)庫URL(Database URL):jdbc:mysql://ipOfTheServer:3306/cloud
  • JDBC Driver class:com.mysql.jdbc.Driver
  • 用戶名(Username):數(shù)據(jù)庫的用戶名
  • 密碼(Password):用戶名的密碼

屏幕上的其他字段可以保留為默認值终吼。

JMeter使用控制面板中指定的配置設置創(chuàng)建一個數(shù)據(jù)庫連接池。在“Variable Name”字段中的JDBC請求中引用該池氯哮〖使颍可以使用幾個不同的JDBC配置元素,但它們必須具有唯一的名稱喉钢。每個JDBC請求都必須引用JDBC配置池姆打。多個JDBC請求可以引用同一個池。

圖6.3 JDBD 配置

再次選擇JDBC Users元素出牧。點擊你的鼠標右鍵添加菜單,然后選擇添加SamplerJDBC Request穴肘。然后歇盼,選擇這個新元素以查看它的控制面板(參見圖6.4)舔痕。

圖6.4 JDBC Request

在我們的測試計劃中,我們將發(fā)出兩個JDBC請求。第一個用于選擇所有“運行”的VM實例伯复,第二個用于選擇“清除”VM實例(顯然,您應該將這些實例更改為適合您的特定數(shù)據(jù)庫的示例)啸如。這是所示侍匙。

JMeter按將請求添加到樹中的順序發(fā)送請求叮雳。

首先編輯以下屬性(參見圖6.5):

  • 將名稱更改為“VM Running”。
  • 輸入池名稱:“myDatabase”(與configuration元素中的名稱相同)
  • 輸入SQL查詢字符串字段帘不。
  • 輸入帶有“Running”值的參數(shù)值字段。
  • 輸入帶有'VARCHAR'的參數(shù)類型寞焙。
圖6.5 JDBC Request for the first SQL request

接下來储狭,添加第二個請求JDBC并編輯以下屬性(參見圖6.6):

  • 將名稱改為“VM Expunging”。
  • 將參數(shù)值的值更改為“Expunging”捣郊。
圖 6.6. JDBC Request for the second request

?

6.3 添加一個監(jiān)聽器來查看/存儲測試結(jié)果(Adding a Listener to View/Store the Test Results)


您需要添加到測試計劃中的最后一個元素是監(jiān)聽器辽狈。這個元素負責將JDBC請求的所有結(jié)果存儲在一個文件中并顯示結(jié)果。

用戶選擇JDBC元素和添加一個總結(jié)報告監(jiān)聽器(添加監(jiān)聽器Summary Report)呛牲。

最后刮萌,保存測試計劃,并運行測試計劃。

監(jiān)聽器顯示結(jié)果侈净。


圖 6.7. Graph results Listener

本篇文章的原文出處尊勿。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市畜侦,隨后出現(xiàn)的幾起案子元扔,更是在濱河造成了極大的恐慌,老刑警劉巖旋膳,帶你破解...
    沈念sama閱讀 218,122評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件澎语,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評論 3 395
  • 文/潘曉璐 我一進店門萄涯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來几颜,“玉大人,你說我怎么就攤上這事将饺。” “怎么了?”我有些...
    開封第一講書人閱讀 164,491評論 0 354
  • 文/不壞的土叔 我叫張陵娃承,是天一觀的道長奏夫。 經(jīng)常有香客問我,道長历筝,這世上最難降的妖魔是什么酗昼? 我笑而不...
    開封第一講書人閱讀 58,636評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮梳猪,結(jié)果婚禮上麻削,老公的妹妹穿的比我還像新娘。我一直安慰自己春弥,他們只是感情好呛哟,可當我...
    茶點故事閱讀 67,676評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著匿沛,像睡著了一般竖共。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上俺祠,一...
    開封第一講書人閱讀 51,541評論 1 305
  • 那天公给,我揣著相機與錄音,去河邊找鬼蜘渣。 笑死,一個胖子當著我的面吹牛蔫缸,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播吐葱,決...
    沈念sama閱讀 40,292評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼校翔,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了孟辑?” 一聲冷哼從身側(cè)響起蔫敲,我...
    開封第一講書人閱讀 39,211評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎貌虾,沒想到半個月后裙犹,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體榴鼎,經(jīng)...
    沈念sama閱讀 45,655評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,846評論 3 336
  • 正文 我和宋清朗相戀三年哩陕,在試婚紗的時候發(fā)現(xiàn)自己被綠了赫舒。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,965評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡心赶,死狀恐怖缺猛,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情荔燎,我是刑警寧澤,帶...
    沈念sama閱讀 35,684評論 5 347
  • 正文 年R本政府宣布琐簇,位于F島的核電站座享,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏丈秩。R本人自食惡果不足惜淳衙,卻給世界環(huán)境...
    茶點故事閱讀 41,295評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望筷狼。 院中可真熱鬧匠童,春花似錦、人聲如沸汤求。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至莹痢,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間航瞭,已是汗流浹背坦辟。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留滨彻,地道東北人挪蹭。 一個月前我還...
    沈念sama閱讀 48,126評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像冬骚,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子只冻,可洞房花燭夜當晚...
    茶點故事閱讀 44,914評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 公司最近需要測試后臺性能喜德,所以學習使用了Jmeter,在此做記錄舍悯,也分享給更多需要的人。 這篇文章是 JMeter...
    顧顧314閱讀 4,273評論 0 10
  • 這篇文章接上一篇(即 JMeter 第2篇) 文章里的每一句話都是我斟酌過的萌衬,我認為需要有注釋或者插圖的地方都會有...
    顧顧314閱讀 1,331評論 0 1
  • 2016年祠墅,無錫;2017年毁嗦,我們在上海回铛。 記得去年的10月3號,我來無錫找你勺届,我一時粗心娶耍,記錯了發(fā)車時間,最后沒...
    MDzz77閱讀 833評論 0 0
  • 打開思緒的圍欄 那緊緊勒住的情緒奔涌而來 如脫韁野馬如堤壩決堤 如同病毒復制 耗無情面的侵襲了所有腦細胞 靜觀物質(zhì)...
    c361279aca9d閱讀 611評論 0 1
  • 《遇見孩子,遇見更好的自己》韓老師讀書會第二次課想鹰,開場就是韓老師對自己在閱讀中產(chǎn)生敏感的追究,但凡敏感都是遇見自己...
    芷凡bonita閱讀 444評論 3 4