数据库测试工具,测试用例管理工具
这篇文章给大家聊聊关于数据库测试工具,以及测试用例管理工具对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
几个常用的MySQL性能测试工具
1、mysqlslap
安装:简单,装了mysql就有了
作用:模拟并发测试数据库性能。
优点:简单,容易使用。
不足:不能指定生成的数据规模,测试过程不清楚针对十万级还是百万级数据做的测试,感觉不太适合做综合测试,比较适合针对既有数据库,对单个sql进行优化的测试。
使用方法:
可以使用mysqlslap--help来显示使用方法:
Default options are read from the following files in the given order:
/etc/mysql/my.cnf/etc/my.cnf~/.my.cnf
--concurrency代表并发数量,多个可以用逗号隔开,concurrency=10,50,100,并发连接线程数分别是10、50、100个并发。
--engines代表要测试的引擎,可以有多个,用分隔符隔开。
--iterations代表要运行这些测试多少次。
--auto-generate-sql代表用系统自己生成的SQL脚本来测试。
--auto-generate-sql-load-type代表要测试的是读还是写还是两者混合的(read,write,update,mixed)
--number-of-queries代表总共要运行多少次查询。每个客户运行的查询数量可以用查询总数/并发数来计算。
--debug-info代表要额外输出CPU以及内存的相关信息。
--number-int-cols:创建测试表的 int型字段数量
--auto-generate-sql-add-autoincrement:代表对生成的表自动添加auto_increment列,从5.1.18版本开始
--number-char-cols创建测试表的 char型字段数量。
--create-schema测试的schema,MySQL中schema也就是database。
--query使用自定义脚本执行测试,例如可以调用自定义的一个存储过程或者sql语句来执行测试。
--only-print如果只想打印看看SQL语句是什么,可以用这个选项。
mysqlslap-umysql-p123--concurrency=100--iterations=1--auto-generate-sql--auto-generate-sql-add-autoincrement--auto-generate-sql-load-type=mixed--engine=myisam--number-of-queries=10--debug-info
或:
指定数据库和sql语句:
mysqlslap-h192.168.3.18-P4040--concurrency=100--iterations=1--create-schema='test'--query='select* from test;'--number-of-queries=10--debug-info-umysql-p123
要是看到底做了什么可以加上:--only-print
Benchmark
Average number of seconds to run all queries: 25.225 seconds
Minimum number of seconds to run all queries: 25.225 seconds
Maximum number of seconds to run all queries: 25.225 seconds
Number of clients running queries: 100
Average number of queries per client: 0
以上表明100个客户端同时运行要25秒
2、sysbench
安装:
可以从下载
tar zxf sysbench-0.4.12.tar.gz
cd sysbench-0.4.12
./autogen.sh
./configure&& make&& make install
strip/usr/local/bin/sysbench
安装时候可能会报错,后来baidu发现个好文 怕以后找不到,也贴过来吧
1.如果mysql不是默认路径安装,那么需要通过指定--with-mysql-includes和--with-mysql-libs参数来加载mysql安装路径
2.如果报错:
../libtool: line 838: X--tag=CC: command not found
../libtool: line 871: libtool: ignoring unknown tag: command not found
../libtool: line 838: X--mode=link: command not found
../libtool: line 1004:*** Warning: inferring the mode of operation is deprecated.: command not found
../libtool: line 1005:*** Future versions of Libtool will require--mode=MODE be specified.: command not found
../libtool: line 2231: X-g: command not found
../libtool: line 2231: X-O2: command not found
那么执行下根目录的:autogen.sh文件,然后重新configure&& make&& make install
3.如果报错:
sysbench: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
那么执行下:
n-s/usr/local/mysql5.5/mysql/lib/libmysqlclient.so.18/usr/lib64/
4.如果执行autogen.sh时,报如下错误:
./autogen.sh: line 3: aclocal: command not found
那么需要安装一个软件:
yum install automake
然后需要增加一个参数:查找: AC_PROG_LIBTOOL将其注释,然后增加AC_PROG_RANLIB
作用:模拟并发,可以执行CPU/内存/线程/IO/数据库等方面的性能测试。数据库目前支持MySQL/Oracle/PostgreSQL
优点:可以指定测试数据的规模,可以单独测试读、写的性能,也可以测试读写混合的性能。
不足:测试的时候,由于网络原因,测试的非常慢,但是最终给的结果却很好,并发支持很高,所以给我的感觉是并不太准确。当然也可能我没搞明白原理
使用方法:
准备数据
sysbench--test=oltp--mysql-table-engine=myisam--oltp-table-size=400000--mysql-db=dbtest2--mysql-user=root--mysql-host=192.168.1.101--mysql-password=pwd prepare
执行测试
sysbench--num-threads=100--max-requests=4000--test=oltp--mysql-table-engine=innodb--oltp-table-size=400000--mysql-db=dbtest1--mysql-user=root--mysql-host=192.168.1.101--mysql-password=pwd run
sysbench 0.4.12: multi-threaded system evaluation benchmark
No DB drivers specified, using mysql
Running the test with following options:
Number of threads: 100
Doing OLTP test.
Running mixed OLTP test
Using Special distribution(12 iterations, 1 pct of values are returned in 75 pct cases)
Using"BEGIN" for starting transactions
Using auto_inc on the id column
Maximum number of requests for OLTP test is limited to 4000
Threads started!
Done.
OLTP test statistics:
queries performed:
read: 56014
write: 20005
other: 8002
total: 84021
transactions: 4001(259.14 per sec.)
deadlocks: 0(0.00 per sec.)
read/write requests: 76019(4923.75 per sec.)
other operations: 8002(518.29 per sec.)
Test execution summary:
total time: 15.4393s
total number of events: 4001
total time taken by event execution: 1504.7744
per-request statistics:
min: 33.45ms
avg: 376.10ms
max: 861.53ms
approx. 95 percentile: 505.65ms
Threads fairness:
events(avg/stddev): 40.0100/0.67
execution time(avg/stddev): 15.0477/0.22
3、tpcc-mysql
安装:
如果从原网站上下载源码比较麻烦,需要工具、注册、生成证书等。这里提供一个下载包
export C_INCLUDE_PATH=/usr/include/mysql
export PATH=/usr/bin:$PATH
export LD_LIBRARY_PATH=/usr/lib/mysql
cd/tmp/tpcc/src
make
然后就会在/tmp/tpcc-mysql下生成 tpcc命令行工具 tpcc_load、 tpcc_start
作用:测试mysql数据库的整体性能
优点:符合tpcc标准,有标准的方法,模拟真实的交易活动,结果比较可靠。
不足:不能单独测试读或者写的性能,对于一些以查询为主或者只写的应用,就没有这么大的意义了。
使用方法:
加载数据
创建库
mysql>create database tpcc10;
创建表:
shell>mysql tpcc10< create_table.sql
添加外键:
shell>mysql tpcc10< add_fkey_idx.sql
加载数据:
1、单进程加载:
shell>./tpcc_load 192.168.11.172 tpcc10 root pwd 300
|主机||数据库||用户||密码||warehouse|
2、并发加载:(推荐,但需要修改一下)
shell>./load.sh tpcc300 300
|数据库||warehouse|
3、测试
./tpcc_start-h192.168.11.172-d tpcc-u root-p'pwd'-w 10-c 10-r 10-l 60-i 10-f/mnt/hgfs/mysql/tpcc100_2013522.txt
***************************************
***###easy### TPC-C Load Generator***
***************************************
option h with value'192.168.11.172'
option d with value'tpcc'
option u with value'root'
option p with value'pwd'
option w with value'1'
option c with value'100'
option r with value'120'
option l with value'60'
option i with value'10'
option f with value'/mnt/hgfs/mysql/tpcc100_2013522.txt'
<Parameters>
[server]: 192.168.11.172
[port]: 3306
[DBname]: tpcc
[user]: root
[pass]: pwd
[warehouse]: 1
[connection]: 100
[rampup]: 120(sec.)
[measure]: 60(sec.)
RAMP-UP TIME.(120 sec.)
MEASURING START.
软件测试需要哪些工具
序号名称用途优缺点开发公司
1 Apache JMeter功能特性、度量被测试软件使用环境:Solaris, Linux, Windows(98, NT, 2000). JDK1.4以上 Apache
2 ASTRA WEB测试非开源 MI公司
3 ATTOLTESTWARE代码测试
嵌入式测试嵌入式实时应用软件单元和通信系统测试 ATTOLTESTWARE
4 AutoRunner功能测试提供针对脚本完善的跟踪和调试功能的、支持IE测试和Windows native测试上海泽众软件科技有限公司
5 bitcnts性能测试使用环境:Linux
6 Borland SilkTest 2006功能测试能快速建立功能测试,并分析功能错误 Borland
7 BoundsChecker静态测试 Visual C++开发环境所开发的程序代码的自动捕捉错误及调试工具上海环软信息技术有限公司
8 Bugzilla软件缺陷管理使用环境: TBC上海泽众软件科技有限公司
9 BugzillaTest Runner测试用例管理系统使用环境:Bugzilla 2.16.3or above
10 CodeReview代码分析 CodeReview会将出错的内容及导致出错的原因一一呈现给开发人员。
11 CODETEST在线测试
嵌入式测试嵌入式软件在线测试 AppliedMicrosystemsCorp
12 DBMonster SQL数据库的压力测试使用环境: OS Independent IBM
13 DTX高速、精准福禄克网络公司
14 E—Test功能测试可以支持多内码的测试数据英特尔公司
15 E—TEST SUITE WEB测试收费 RSW公司
16 FailSafe静态测试 FailSafe可以提高编写VisualBasic程序的稳定度,同时也方便日后的产品维护。 ORACLE
17 File-AID/RDX静态测试节省时间、节省磁盘空间康博公司
18 GammaRay可靠性评测
嵌入式测试主要包括软件逻辑分析仪GammaProfiler GammaRay
19 IBM Rational ClearQuest缺陷测试集成于IBM Rational Suite和 IBM Rational Team Unifying Platform,提供生命周期变更管理。 IBM
20 IxChariot性能测试可应用于设备选型、网络建设及验收、日常维护 IXIA
21 JMeter功能和性能测试它是功能和性能测试的工具,100%的用java实现 RadView
22 Jtest白盒测试提高代码的可靠性 parasoft
23 jtest白盒测试通过自动实现java的单元测试和代码标准校验,来提高代码的可靠性
parasoft
24 JUnit测试框架
单元测试是Xuint测试体系架构的一种实现
25 Link Sleuth页面链接测试收费
26 Linux Test Project功能测试使用环境: Linux
27 LoadRunner系统行为和性能的负载测试工具能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。
28 LogiScope静态测试
嵌入式测试用于代码分析、软件测试、覆盖测试。 TeleLogic公司
29 LynxInsure++静态测试
嵌入式测试基于LynxOS的应用代码检测与分析测试工具。 LynxREAL-TIMESYSTEMS公司
30 MacOS/Carbon网络应用程序的负载模拟器使用环境:JDK 1.3以上
31 Mantis缺陷管理工具使用环境: MySQL, PHP
32 MaxQ HTTP代理工具、录制测试脚本 Java 1.2以上版本
33 MD1230A动态测试可在恶劣环境下进行现场操作应用安立公司
34 Mercury全面的、基于Web的集成系统
35 MessageMaster测试嵌入式软件系统工具向环境提供基于消息的接口。 ElviorLtd.公司
36 Microsoft Web Application Stress Tool性能测试可以使用少量的Client端计算机仿真大量用户上线对网站服务所可能造成的影响
微软
37 OpenSTA负载测试使用环境:OS Independent
可以精确的度量负载测试
38 QADirector收费 Compuware公司
39 QALOAD压力测试收费 COMPUWARE
40 QARUN静态测试收费 COMPUWARE
41 Rational Performance系统性能测试收费
42 RATIONAL TEAM TEST回归测试收费
43 RATIONAL VISUAL QUANTIFY
负载测试收费 LOADRUNNER
44 SmartBits网络性能分析可以测试、仿真、分析、开发和验证网络基础设施并查找故障思博伦通信
45 SmartCheck静态测试针对Visual Basic开发环境的分析工具
46 SQA LOAD压力测试收费 RATIONAL
47 SQA ROBOT静态测试收费 RATIONAL
48 TAR终端自动化测试工具终端自动化测试工具、适用于VT100、VT220
49 Test Manager收费 Rational公司
51 TESTBYTES数据库测试工具收费
52 TestCenter测试用例管理工具它实现了测试需求管理、测试用例管理、测试业务组件管理、测试计划管理等
53 TestDirector Web的测试管理系统需求管理,测试计划,测试执行以及错误跟踪等功能 TestDirector
54 TestExpert测试管理工具能管理整个测试过程 Silicon Valley Networks公司
55 TestLink测试管理工具使用环境: Apache, MySQL, PHP
50 TestPlan Control测试流程管理工具收费
56 TestQuestPro自动操纵测试工具提供一种高效的自动检测目标系统,获取其输出性能的测试方法 TestQuest公司
57 TestVectorGenerationSystem自动化测试提供自动模型分析、测试生成、测试覆盖分析和测试执行的完整工具包 T—VECTechnologies公司
58 TestView Web性能测试 Web服务的功能、性能、程序漏洞、兼容性、稳定性和抗攻击性 Radview
59 TestWorks既可单独使用,也可捆绑销售使用 SoftwareResearch.Inc公司
60 TPTEST测试Internet连接速度使用环境:MacOS/Carbon、 Win32
61 TrackRecord缺陷跟踪工具收费
62 TrueCoverage静态测试支持Visual C++、Visual Basic及Java程序语言
63 TrueTime静态测试支持Visual C++、Visual Basic及Java程序语言
64 VectorCast静态测试
嵌入式测试自动生成测试代码,为主机和嵌入式环境构造可执行的测试架构。 VectorSoftware.Inc
65 WebInject自动化测试和回归自动化测试使用环境:Windows, OSIndependent, Linux。
66 webload性能测试和分析工具它让web应用程序开发者自动执行压力测试 RadView
67 WINLOAD压力测试收费 MI公司
68 WinRunner企业级自动化测试工具提高测试人员的工作效率和质量,确保跨平台的、复杂的企业级应用无故障发布及长期稳定运行 Mercury Interactive
-------------
刚好我在学习这块,嘎嘎
测试常用数据库有哪些
测试常用的数据库有多种,主要包括MySQL、SQLite、PostgreSQL、Microsoft SQL Server和Oracle等。
MySQL:
MySQL是Web应用中最常用的关系型数据库之一。它适用于需要高并发处理的场景,具有优秀的性能和稳定性。MySQL还提供了丰富的存储引擎选择,可以根据不同的需求进行优化。SQLite:
SQLite是一个轻量级的关系型数据库,特别适用于资源受限的环境,如移动应用和嵌入式系统。它不需要单独的服务器进程,可以直接嵌入到应用程序中,具有体积小、速度快、易于部署和维护的特点。PostgreSQL:
PostgreSQL是一个功能强大的开源关系型数据库,提供了丰富的数据类型和操作功能。它适用于需要处理复杂数据操作和查询的应用,如科学计算、数据分析等。PostgreSQL还具有良好的标准兼容性和可扩展性。Microsoft SQL Server:
Microsoft SQL Server是微软开发的一款关系型数据库,特别适用于Windows环境下的企业级应用。它提供了强大的集成和支持服务,如与Office、SharePoint等产品的无缝集成,以及商业智能分析功能。SQL Server还具有良好的性能和安全性。Oracle:
Oracle数据库是一款高性能、高可靠性和功能丰富的关系型数据库,适用于处理大规模数据和复杂事务。它在金融、电信等领域有着广泛的应用,提供了丰富的企业级特性和工具,如高可用性、数据恢复、安全性等。
好了,文章到此结束,希望可以帮助到大家。