相關推薦:測試工具
測試工具 測試管理工具????????????????????????? Quality Center 基于WEB的測試管理工具 Test ?Director 功能測試工具????????????????????????? ?QuickTest Professional 性能測試工具???????????????????????? ? LoadRunner ? ? 哪位仁兄有相關此類軟件測
Super-smack?是一個強大的廣受贊譽的壓力測試工具,支持MySQL和PostgreSQL。這個工具程序現在由?Tony?Bourke?維護。
./configure―with-mysql―with-pgsql
根據需要,可以只保留?MySQL?和?PostgreSQL?中的一個。如果你的?client?library?安裝在其他目錄,你要指明它,例如:
./configure―with-mysql=/opt/mysql
然后
make
su
make?install
PS.?FreeBSD?下面有?ports?的,安裝起來更方便。
使用
將程序提供的?smack?樣本文件重新拷貝一份,然后編輯此文件,填入相應的連接信息,比如用戶名、密碼、端口和測試所用的數據庫名。
cp?/usr/share/smacks/select-key.smack?select-key-mysql.smack
開始運行
super-smack?―d?mysql?select-key-mysql.smack?10?1000
10?是連接客戶的數目,每個客戶有100次輪詢。
結果
Query?Barrel?Report?for?client?smacker1
connect:?max=66ms?min=0ms?avg=?66ms?from?10?clients
Querytype?numqueries?maxtime?mintime?qpers
select_index?20000?0?0?4360.61
這表示?super-smack?運行了10個客戶,客戶連接最長時間為66毫秒,最短的則沒有延遲,平均時間為62毫秒。Super-smack?總共執行了20000此查詢,每個查詢所花時間都小于1毫秒。整個測試期間,服務端平均每秒執行了4360.61次?select_index?型查詢。
max、min、avg為客戶端最大、最小、平均連接時間,num_queries、max_time、min_time為總請求次數,最大、最小查詢時間(以毫秒為單位),q_per_s為每秒處理的請求數。
另外,可以修改?smack文件中?相應的參數以符合你的測試要求。
Files:
/usr/local/bin/gen-data
/usr/local/bin/super-smack
/usr/local/share/super-smack/select-key.smack
/usr/local/share/super-smack/update-select.smack
2.?安裝:
注意在編譯時,可以先把對應的libmysqlclient.so.*拷貝到/usr/lib
3.?測試:
[root@DB_Backup?smacks]#?super-smack?-d?mysql?select-key.smack?10?10000
Query?Barrel?Report?for?client?smacker1
connect:?max=37ms?min=0ms?avg=?10ms?from?10?clients
Query_type?num_queries?max_time?min_time?q_per_s
select_index?200000?0?0?10148.47
[root@DB_Backup?smacks]#?super-smack?-d?mysql?update-select.smack?10?1000
Query?Barrel?Report?for?client?smacker
connect:?max=2ms?min=0ms?avg=?0ms?from?10?clients
Query_type?num_queries?max_time?min_time?q_per_s
select_index?10000?1?0?4038.90
update_index?10000?1?0?4038.90
在以上測試結果中
10代表10個客戶端同時接入,1000代表每個客戶端的查詢次數(腳本中,對查詢次數做了翻倍處理)
max、min、avg為客戶端最大、最小、平均連接時間
num_queries、max_time、min_time為總請求次數,最大、最小查詢時間(以毫秒為單位)
q_per_s為每秒處理的請求數Monkey測試簡介 ? shell, monkey, system, Android,?文件系統Monkey,?示例,?簡介 一、Monkey測試簡介 Monkey測試是Android平臺自動化測試的一種手段,通過Monkey程序模擬用戶觸摸屏幕、滑動Trackball、按鍵等操作來對設備上的程序進行壓 ? 力測試,檢測程序多
==========================================
./configure?--prefix=/usr/local/supersmack?--with-mysql?--with-mysql-lib=/usr/local/mysql/lib/mysql/?--with-mysql-include=/usr/local/mysql/include/mysql/
注意紅色字體代表的目錄,并不是默認的mysql/lib和mysql/include
[root@mysql?super-smack-1.3]#?make
[root@mysql?super-smack-1.3]#?make?install
3.配置測試信息
[root@mysql?bin]#?cp?/usr/share/smacks/select-key.smack?/usr/local/supersmack/bin/
[root@mysql?bin]#?cp?/usr/local/supersmack/bin/*?/usr/bin/
修改select-key.smack?里面的帳號密碼及測試使用的數據庫。
4.開始測試
測試myiasm引擎
select-key性能
[root@mysql?bin]#?super-smack?-d?mysql?select-key.smack?10?1000
./super-smack:?error?while?loading?shared?libraries:?libmysqlclient.so.16:?cannot?open?shared?object?file:?No?such?file?or?directory
缺少庫文件,將該文件CP到系統目錄下
#?cp?/usr/local/mysql/lib/mysql/libmysqlclient.so.16?/usr/lib
如果無法載入數據,則按以下方法處理
/usr/local/supersmack/bin/gen-data?-n?90000?-f?%12-12s%n,%25-25s,%n,%d>/var/smack-data/words.dat
再次運行測試
[root@mysql?bin]#?./super-smack?-d?mysql?select-key.smack?100?200
Query?Barrel?Report?for?client?smacker1
connect:?max=391ms??min=1ms?avg=?51ms?from?100?clients
Query_type?num_queries?max_time?min_time?q_per_s
select_index?40000?0?0?3713.30
100用戶執行200次輪詢,共執行40000次查詢
update-select性能
[root@mysql?bin]#?./super-smack?-d?mysql?update-select.smack?100?200
Query?Barrel?Report?for?client?smacker
connect:?max=2300ms??min=1ms?avg=?70ms?from?100?clients
Query_type?num_queries?max_time?min_time?q_per_s
select_index?20000?18?0?1428.06
update_index?20000?20?0?1428.06
innodb測試
mysql>?alter?table?http_auth?engine=innodb;
Query?OK,?90000?rows?affected?(1.85?sec)
Records:?90000??Duplicates:?0??Warnings:?0
select-key
[root@mysql?bin]#?./super-smack?-d?mysql?select-key.smack?100?200
Query?Barrel?Report?for?client?smacker1
connect:?max=683ms??min=1ms?avg=?59ms?from?100?clients
Query_type?num_queries?max_time?min_time?q_per_s
select_index?40000?0?0?3694.71
update-select
[root@mysql?bin]#?./super-smack?-d?mysql?update-select.smack?100?200
Query?Barrel?Report?for?client?smacker
connect:?max=1208ms??min=1ms?avg=?57ms?from?100?clients
Query_type?num_queries?max_time?min_time?q_per_s
select_index?20000?253?0?672.55
update_index?20000?87?0?672.55