Top Database Performance Testing Tools

In this article, you will learn about top database performance testing tools

Here is the list of the top 10 free website performance testing tools.

Database Benchmark

Database Benchmark is an open source application redistributed under the GPLv2 license. It is a .NET tool which is easy to use and designed to stress test databases with large data flows. Database Benchmark works on advanced data generators which generate test data with specially designed algorithms to ensure maximum objectivity of the test. Two main test scenarios performed by Database Benchmark are,
  1. Insertion of large amounts of randomly generated records with sequential or random keys
  2. Reading the inserted records, ordered by their keys

Target databases MySQL, SQL Server, PostgreSQL, MongoDB and many others.

Features of Database Benchmark are, as follows,

  • Easy to use
  • Open Source
  • Performance monitoring
  • Graphic visualization and export

Learn More: http://stssoft.com/products/database-benchmark/

DbFit

DbFit is a free and open source tool released under the GPL license. It is a database testing framework which supports test-driven database development of database code. DbFit is a part of FitNesse, itself an implementation of the FIT acceptance testing framework having a large community. Tests are written as wiki tables, with a query or procedure execute, followed by a listing of the expected results making them more readable than xUnit-style tests. It can handle SQL stored procedures directly. DbFit can run tests from command line using any Java IDE or CI build tool.

Features of DbFit are as follows,

  • It can write, manage, and execute tests directly from the browser.
  • It is a free and open source tool
  • Rock solid framework using FitNesse framework
  • Supports all major DBs
  • Supports all Java IDE or CI build tools
Learn More: http://dbfit.github.io/dbfit/

DbUnit

DbUnit is an open source framework and is a powerful tool for simplifying unit testing of the database operations. It extends the popular JUnit test framework. DbUnit provides a simple XML based mechanism for loading the test data in XML files, in the form of data sets. DbUnit can also work with large datasets, when used in streaming mode. It can create a data set containing all the data in your database, given only a JDBS connection.

Learn More: http://dbunit.sourceforge.net/

DB Test Driven

DB Test Driven is a unit testing framework for database test-driven development. DB Test Driven is an open source framework.

DB Test Driven can support the following database environments,

  • SQL Server
  • Oracle
  • Netezza
Learn More: http://www.dbtestdriven.com/

HammerDB, Open Source Database Load Testing Tool

Recently, one of my clients asked me for some recommendation on some database load testing tools. One of these tools is HammerDB. I thought, it would be interesting to share some information on HammerDB. If you work with databases and are concerned about performance of your database, you may want to give it a try.

http://www.hammerdb.com/

HammerDB is a graphical open source database load testing and benchmarking tool, for Linux and Windows, to test databases running on any operating system. HammerDB is automated, multi-threaded, and extensible, with dynamic scripting support.

HammerDB includes complete built-in workloads, based on industry standard TPC-C and TPC-H benchmarks as well as capture and replay of the Oracle database.

HammerDB includes transaction and CPU monitors to complement the rich feature set that makes HammerDB the loading tool for benchmarking, testing and comparing the leading databases, worldwide.

Download HammerDB here.

HammerDB supports major databases including SQL Server, Oracle, MySQL, DB2, PostgresSQL, MariaDB, Redis, and Trafodion.

Here is a list of quick start tutorials,

NoSQLMap

NoSQLMap is free software, licensed under the terms of GNU General Public License v3.0. NoSQLMap is an open source tool, designed in Python, to audit for as well as automate the injection attacks and exploit default configuration weakness in NoSQL databases, along with the web applications using NoSQL, in order to disclose data from the database. Presently, the tool’s exploits are focused around MongoDB, but support for other NoSQL based platforms, such as CouchDB, Redis, and Cassandra, are planned in future releases.

Learn More: http://www.nosqlmap.net/index.html

NoSQLUnit

NoSQLUnit is an open source JUnit extension which manages the lifecycle of NoSQL servers and is used for writing tests of Java applications that use NoSQL databases. NoSQLUnit helps you to main the database under testing into known states, fixing the isolation problem. It also helps standardize the way we write tests for NoSQL databases. NoSQLUnit support tests can be run for applications deployed in the cloud.

Following are the databases engines supported by NoSQLUnit,

  • MongoDB
  • Cassandra
  • HBase
  • Redis
  • Neo4j
Learn More: https://github.com/lordofthejars/nosql-unit

SeLite

SeLite is a fully open source framework under GNU LGPL 3. SeLite makes selenium better. SeLite (Selenium+SQLite) is a family of Selenium extensions and frameworks, which improves development interfaces, enhances Selenese syntax, and an API that increases development efficiency and enables user scripts to be more effective. It supports reporting and interaction. SeLite enables DB-driver navigation with SQLite, the most widely deployed SQL database.

Learn More: http://selite.github.io/

sqlmap

Sqlmap is one of the most popular and powerful SQL injection automation tools written in Python language. sqlmap automates the process of detecting and exploiting SQL injection’s flaws and taking over database servers. It comes with a powerful detection tool. Given a vulnerable http request url, sqlmap can exploit the remote database and can do a lot of hacking, like extracting database names and tables with its data. It can also read and write files on remote file systems.

Features of sqlmap are as follows,

  • Supports MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Sybase, Firebird and many more database management systems
  • Supports for multi SQL injection techniques like Boolean-bases blind, time-based blind, error-based, Union query-based, stacked queries and out-of-band
  • Supports to dump database tables entirely
  • Supports to search for specific database name, table, column across all database tables
  • Supports to establish an out-of-band stateful TCP connection between attacker machine and database server
Learn More: http://sqlmap.org/

tSQLt

tSQLt is an open source database unit testing framework for Microsoft SQL Server. tSQLt is compatible with SQL Server 2005 and above editions. tSQLt allows you to implement unit tests in T-SQL. tSQLt provides methods to help isolate functionality to be tested.

Following are the features of tSQLt,

  • Tests run automatically within the transactions
  • Tests can be grouped together within a schema
  • Results can be generated in plain text or XML
  • Provides the ability to fake tables and views and to create stored procedure spies which allows you to isolate the code which you are testing.
Learn More: http://tsqlt.org/