dogtail is a GUI test tool and automation framework. It uses
Accessibility (a11y) technologies to communicate with desktop
applications. dogtail scripts are written in Python and executed like
any other Python program.

The Fressia Project is an effort to develop a framework for testing automation. It's intended for users (testers) who want a simple tool that can be used just out of the box. It was originally conceived as part of the QA efforts at the US National Optical Astronomy Observatory. It has been delivered to the community because, despite it still being at early stages, it has proven to be a useful general purpose testing tool. It is designed to provide functional testing, system testing, system integration testing, white (black) box testing, automated regression testing, acceptance testing, etc.

Zadok is a multi-language test suite runner. It is designed to run small test programs written in one of the programming or scripting languages that it understands, compare their output to what is expected, and determine a pass or fail. Tests are grouped into suites for conceptual organization purposes.

Simple Fuzzer is a very simple fuzzer. It is reminiscent of easy-fuzz from 2004, written by priest of the priestmasters. His layout for building a fuzzy test was a "script" file with a preamble, setting some basic state and variables followed by the "meat and potatoes" tests. This approach was borrowed for Simple Fuzzer.

Mistletoe is a JUnit extension intended for integration testing. In technical terms, it is a JUnit test suite runner presenting the test results via HTTP as a Web page. Mistletoe, when incorporated within an application, will help diagnose integration issues. For example, an application that runs perfectly in the developer's environment may not run properly in the production environment due to configuration errors and connectivity issues. Instead of perusing log files, or looking at stack traces, mistletoe will run a user-specified series of tests and present the results in the form of a Web page served by the application itself. Since the tests are run within the context of the deployed application, given an appropriate test suite, you can home in on integration problems quickly and conveniently.

MASH is a modular, automated script harness. It allows users to implement simple harnesses that perform work external to a system. The framework will invoke that harness as outlined by an XML script. For example, when using the framework to test a system you could create a script that cleans and loads a database, FTPs some data, submits a login form, and verifies HTTP information. Harnesses can easily be built to do almost anything (many harnesses are provided), not just Web page verification. While harnesses are written in Java, the scripts may be run against any type of system as harnesses are intended to act as clients.

The Java Engine for Testing (JET) is a system for running distributed automated tests. It has been used by Sun for testing the High Availability DataBase (HADB), JavaDB, PostgreSQL, Memcached, and the MySQL Cluster Manager. JET should be a good way to write your tests if the product you want to test is distributed or has a client/server architecture, if it is natural for you to write the tests in Java, and if you want to invest time in developing tests and abstractions for later reuse.