Citrus is a test framework written in Java that enables automated integration testing of message-based enterprise SOA applications. The tool can easily simulate surrounding systems across various transports and protocols (e.g. JMS, SOAP WebServices, HTTP, TCP/IP, etc.) in order to perform end-to-end use case testing. Citrus provides strong validation mechanisms for XML message contents and allows you to build complex testing logic such as sending and receiving messages, database validation, automatic retries, variable definitions, dynamic message contents, error simulation, and many more.
tadedon is a set of utilities that form a foundation for applications written with one of the many Java frameworks, such as GWT, GIN, Guice, Google App Engine, commons-configuration, and many others. It lets you specify the default configuration of your application and upgrade it automatically on each new release. It can redirect all java.util.logging to slf4j and easily configure logback. It can bind application configuration in a Guice module. It supports @PostConstruct and @PreDestroy annotations (JSR 250) in Guice applications. It lets you annotate your methods with @Transactional annotation. It supports Guice injector stage in your Web application. It lets you test your Guice managed servlets and filters without needing a real servlet container. It lets you use Guice Matchers for matching super class, interface, and type literal annotations. It can inject event bus to your GWT applications with the help of GIN.
ReportNG is a simple HTML reporting plug-in for the TestNG unit-testing framework. It is intended as a replacement for the default TestNG HTML report. The default report is comprehensive but is not so easy to understand at-a-glance. ReportNG provides a simple, color-coded view of the test results. ReportNG generates 100% valid XHTML 1.0 files. The output can be customised by replacing the default stylesheet with your own CSS file. ReportNG also includes a second reporter that produces JUnit format XML output.
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.