PIT is a fast mutation testing system for Java that makes it possible to test the effectiveness of your unit tests.
You can think of mutation testing as either as an automated test of your tests, or as a much more in depth form of code coverage.
PIT runs your tests against automatically modified versions of your application code. When the application code changes, it should cause a test to fail. If a test does not fail it may indicate an weakness in the suite.
See http://pitest.org for further details.
With the JUnit analysis feature, you can send test run data to an analysis server. The server computes useful results to help you gauge your tests over time: Which atomic tests are likeliest to fail? Has the performance of your test suite had sudden improvements or regressions?
Source: https://github.com/khellste/junit
Details and a tutorial available at above link. Open to any comments or suggestions.
New - Version 3.0.1.RELEASE has been released. This mini-release fixes bug PDM-43 (http://www.jemos.eu/jira/browse/PDM-43)
PODAM is a Java tool to auto-fill POJOs / JavaBeans with data.
The full documentation can be found on PODAM home page
The source code is available at GitHub
the Maven dependencies can be found at Maven Central
With this junit core extension, you can specify the methods to be run in a collection of full qualified method names. Take a look at the following example to get an idea on how this works:
public class RunSome {
public static void main(String[] args) throws SecurityException,
ClassNotFoundException, NoSuchMethodException {
MethodRunnerJUnitCore methodRunner = new MethodRunnerJUnitCore();
String[] methods = new String[] { "ch.rethab.TestClass.someMethod",
"ch.rethab.AnotherClass.anotherMethod" };
methodRunner.runMethods(Arrays.asList(methods));
}
}
Find more information on my blog: http://docode.rethab.ch/2011/02/28/custom-junit-method-runner/
OpenPojo is a library that enables testing and enforcing POJO's behavior, as well as runtime identity management through deep introspection.
OpenPojo uses reflection to create meta-representation for POJO classes that can then be run through the extensible & configurable validation framework. Validation helps enforce structure of code (i.e. public fields, naming convention, etc), or behavior expectations (i.e. set/get only sets and gets without altering value).
Accessive is a tool that allows you to access private field or methods for testing purposes. That means that you don't have to make some of your methods or field package protected just to allow for testing.
Accessive uses reflection and dynamic proxies to access private portion of your objects, allowing you to keep them strongly encapsulated and still be able to test their internals.
For more details visit http://code.google.com/p/accessive/.
"Tests with Parameters" allows you to simply add parameters to your JUnit test methods. TwiP calls such methods with all possible combinations of their parameters... or at least some reasonable subset of commonly failing values in the case of Integers, etc. You can further reduce these values with an assume expression in an annotation, e.g. ">= 0". This works for the primitive types (int, etc.), their Class wrappers (Integer, etc.), Enums and Strings.
XpoLog is a log analysis platform that maps application problems in testing and production, XpoLog have integration to JUnit that helps to analyze all application generated logs during unit testing. The tool help to find more problems during testing.
Find more information on the integration here XpoLog JUnit integration
XpoLog home page http://www.xpolog.com
Infinitest, the free continuous test runner for JUnit, is now available as an Eclipse plugin. Just like the standalone version, the plugin automatically runs JUnit tests in the background as you make changes to the code. It selects tests intelligently, and only runs the ones you need. In addition to the features provided in the standalone version, the new Eclipse plugin reports test failures like compile errors, and works with multiple projects.
For more information, visit http://infinitest.org
Jitr (pronounced "jitter") is a JUnit Integration Test Runner. It allows your web application integration tests to easily run against a lightweight web container in the same JVM as your tests.
More details below...