DBMonster is a tool which helps database application developers with tuning the structure of the database, tuning the usage of indexes, and testing the application performance under heavy database load. DBMonster generates as much random data as you wish and puts it into an SQL database. It provides a very pluggable interface and is trivial to use.
Load is a utility for Web application and SOAP-based Web services performance and scalability testing. It features a scripting language and a library of test objects for the creation of intelligent agents that drive the Web application or SOAP-based Web service. Running hundreds of agents concurrently shows how your software performs in production environments. Load is a Java application that runs on Linux, Solaris, NT, Win2000, and Macintosh. While Load continues to be maintained, the next generation is the TestMaker program.
The Apache JMeter is a 100% pure Java desktop application designed for performance and load testing of servers. It was primarily designed for Web/HTTP testing but it has been expanded to include support for a variety of testing modules. It ships with modules for HTTP and SQL databases (using JDBC). It may be used to test server performance both on static and dynamic resources, to simulate a heavy load on a server or network to test its strength, or to analyse overall performance under different load types. It also provides pluggable interfaces for customizing data visualization, test synchronization, and the construction and execution of tests.
Solex is a Web application testing tool built as a plug-in for the Eclipse IDE. Based on a built- in Web proxy and a concept of extraction, replacement, and assertion rules, Solex provides functions to record a client session, adjust it according to various parameters and replay it. This is typically done in order to ensure the non-regression of a Web application's behavior.
LogiTest is a Java application for functional and regression testing of Web sites. It currently supports GET and POST methods, HTTPS, cookies, browser history, XML formatted tests, simple Testlet API for writing new tests, user-defined HTTP headers and parameters, and regular expressions. Tests are recorded and played back through a easy-to-use GUI and can be stored and loaded from XML files.
Groovy is an agile, dynamic language for the JVM which combines many features from languages like Python, Ruby, and Smalltalk and makes them available to Java developers using a Java-like syntax. It is designed to help get things done on the Java platform in a quicker, more concise, and fun way. It can be used as an alternative compiler to javac to generate standard Java bytecode to be used by any Java project or it can be used dynamically as an alternative language, such as for scripting Java objects, templating, or writing unit test cases.
miniLogger is a very small (4 classes and a 10KB jar) and easy to use logger. It uses a logging API that is a subset of JDK 1.4 logging but works on all Java 2 versions. It has been tested on Windows, Solaris, IRIX, and Linux for versions 1.2 and 1.3 of the Sun JDK. It supports logger control from the command line. Logger names are hierarchical separated by dots, and selecting any name automatically selects all names below. If logger_name is an empty string, it will affect all loggers. The loggers and level options are evaluated from left to right. It prints the thread name, source file name, and number line by default, and output can be redirected from System.err to file or any PrintStream. Finally, the logger hierarchy can easily mirror a package/class hierarchy or can be arbitrarily defined by the user.
This small tool connects to the P6Spy JDBC logger and displays in real time the queries going to the database. It uses an integrated SQL parser to build statistics on the most accessed tables and columns to enable database index creation. Other information is also gathered and displayed, such as the request time for a single request, for a class of request, and for all the requests. Sorting may be done on these views to detect database problems efficiently.
P6Spy is an open source framework for applications to intercept and optionally modify database statements. The P6Spy distribution includes P6Log, which intercepts and logs the database statements of any application that uses JDBC. This application is particularly useful for developers to monitor the SQL statements produced by EJB servers, enabling the developer to write code that achieves maximum efficiency on the server. P6Spy is designed to be installed in minutes and requires no code changes.