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.
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.
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.
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.
MockDoclet is a tool for generating mock objects for Java classes and interfaces to aid in unit testing classes that are tightly coupled to other components. It is an active code generation tool that scans interfaces for JavaDoc style @mock tags at build time to generate the appropriate mock objects. It is built on top of XDoclet and the MockObjects framework, and is designed to be used with JUnit and Ant.
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.
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.
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.