pdfUnit is a framework for testing a generated pdf document with the JUnit test framework so JPdfUnit is a high level api. The framework is designed for an easy access to the PDFBox library. This functionality provides the user a lot of possibilities in pdf document handling. For instance you can test the meta data of the pdf document like the author or the creation date or search for content via Strings, fragments of words or even regular expressions. Different simple ready-to-use assertions allow the user to compare the expected data to the concrete data of the pdf document. JPdfUnit is developed to test one pdf document. You have got three different kinds of using the framework i.e. you can inherit our DocumentTestCase shown in the example or you can work with our DocumentTester class to avoid inheritance from our framework.
JRat is the Java Runtime Analysis Toolkit. Its purpose is to enable developers to better understand the runtime behavior of their Java programs. The term "behavior" includes, but is not limited to performance profiling.
While JRat is still in beta, without adding code to your application it can...
# accumulate timing statistics (a few ways)
# create trace logging
# track rate methods are called over time
# track the response time of methods over time
Jumble is a class level mutation testing tool that works in conjunction with JUnit. The purpose of mutation testing is to provide a measure of the effectiveness of test cases. A single mutation is performed on the code to be tested, the corresponding test cases are then executed. If the modified code fails the tests, then this increases confidence in the tests. Conversely, if the modified code passes the tests this indicates a testing deficiency.
The key to agility is being able to modify code easily and safely. The problem is that many Java applications are too brittle to extend and enhance easily. Attempts to fix or extend - no matter how carefully done - can introduce more bugs and more complexity.
With a full suite of characterization tests generated by JUnit Factory you can bring your legacy code under control. Download our free plug-in for Eclipse to get started.
JUnitPerf is a collection of JUnit test decorators used to measure the performance and scalability of functionality contained within existing JUnit tests.
jDiffChaser is a GUI comparison tool that automates difference detection
between same screens of different versions. You can easily record scenarios
(optionally define zones of the screens to ignore during comparisons) and play suites
of them on two different versions of the same Java Swing application: differences are
then listed in a web page report.
Luntbuild is a powerful build automation and management tool. Continuous Integration or nightly builds can be easily set using a clean web interface. Executed builds are well managed using functions such as search, categorization, promotion, patching, deletion, etc. It also acts as a central build artifacts repository and download area for your whole team.
ServiceFixture is a fixture library built on top of FIT/FitNesse which enables FitNesse to be the integration test and software collaboration platform for service oriented and distributed systems. These systems usually expose stateless services, such as web service (SOAP or REST), ejb and POJO etc, to its internal or external clients, and complex domain objects are always involved in the service interfaces.
It is difficult to leverage FitNesse for these systems due to the fact that it is not trivial to represent complex domain objects in FIT test table, and hence it would require constant fixture development efforts to support the integration test. ServiceFixture is designed to fill this gap.
ServiceFixture uses expression language to represent domain objects, verify and display the response in FIT test table. Every ServiceFixture test is basically a method invocation to a stateless service. The test starts with setting up the input data, then invoking the service operation, and then checking the response.
Because the ServiceFixture is very generic, to setup ServiceFixture and FitNesse for a project, you only need to write a ServiceFixture extension to encapsulate the invocation logic once, which is pretty trivial. No more fixture development is needed after that. It also provides template creator integrated with FitNesse to make tester's life a lot easier too.
ServiceFixture also provides database service fixtures(SelectFixture and UpdateFixture) which can be used to access databases directly from FitNesse test scripts. See Tutorial for more details.
Java mocking is dominated by expect-run-verify libraries like EasyMock or jMock. Mockito offers simpler and more intuitive approach: you ask questions about interactions after execution. Using mockito, you can verify what you want. Using expect-run-verify libraries you are often forced to look after irrelevant interactions.
Mock is a widely used technology in unit test domain. It shields exteral and unnecessary factors and helps developers focus on the specific function to be tested.
EasyMock is a well known mock tool which can create mock object for given interface at runtime. The mock object's behavior can be fine defined prior the test code in the test case. EasyMock is based on java.lang.reflect.Proxy, which can create dynamic proxy class/object according to the given interfaces. It has the inherent limitation from the Proxy. It can create mock object for given interface only.
Mocquer is a similar mock tool as EasyMock. With the help of Dunamis Project, it extends the function of EasyMock to support mock object creation for both class and interface.
p-unit
An open source framework for unit test and performance benchmark, which was initiated by Andrew Zhang, under Apache License v2.0. p-unit supports to run the same tests with single thread or multi-threads, tracks memory and time consumption, and generates the result in the form of plain text, image or pdf file.
Another tool from the great Thoughtworks people. It "provides a set of Ant build files to simplify configuring many of the most popular tools. Setting up a project can be as simple as:
1. Download and extract Panopticode in your project's home directory
2. Copy the PROJECT_HOME/panopticode/build-example.xml file to PROJECT_HOME/build.xml
3. edit the PROJECT_HOME/build.xml to specify your classpath and source code directory.
4. (optional) Select your source code management tool in the PROJECT_HOME/panopticode/panopticode-imports.xml
The whole thing can be easily done in 5 minutes. If you have a fast internet connection you could probably pull it off in 2 minutes :)"
projects
* run your own development projects
* find interesting projects and suitable co-developers
* benefit from state-of-the-art development tools
people
* connect with coders from
around the world
* share your ideas with
like-minded bettercoders
* get help and provide support
to solve problems
you!
* become an even better coder by collaborating with others
* contribute and get recognition for your work
* have lots of fun and fascinating experiences
This project collects and consolidates data from several QA tools and keeps track of them overtime. This allows developers, architects and project managers alike to be presented with a trend of the QA statistics of their project.
The following tools are currently supported:
* Checkstyle: code style validation and design checks. QALab keeps track of number of violations per file and overall.
* PMD: Code checks (possible bugs, dead code, sub-optimal code, etc). QALab keeps track of number of violations per file and overall.
* PMD CPD: Duplicate code (always a bad idea) detection. QALab keeps track of number of the overall number of duplicated lines.
* FindBugs: fantastic tool to detect potential bugs (really!). QALab keeps track of number of violations per file and overall.
* Cobertura: Coverage tool. QALab keeps track of percentage of branch and line coverage.
* Simian: excellent duplicate code detection (non-open source). QALab keeps track of number of the overall number of duplicated lines.
a tool for measuring code metrics of Java applications. Contrary to other tools, Meaxure works with Java source files instead of class files and aims to be extendable. Currently Meaxure supports common metrics like lines of code, number of classes, number of methods or cyclomatic complexity. Due to it's reliance on source files it does not support metrics which cannot be calculated from individual source files like depth of inheritance tree or number of children.
Meaxure supports reporting violations to certain metrics. Rules for violations can be specified using XPath expressions,
RMock 2.0.0 is a Java mock object framework to use with jUnit. RMock has support for a setup-modify-run-verify workflow when writing jUnit tests. It integrates better with IDE refactoring support and allows designing classes and interfaces in a true test-first fashion.