Skip navigation links

XMLUnit for Java 2.7.0 API

XMLUnit helps testing code that creates XML.

See: Description

XMLUnit Core 2.7.0 
Package Description
XMLUnit helps testing code that creates XML.
Provides fluent builders for core parts of XMLUnit.
Contains XMLUnit DifferenceEngine that is at the heart of all comparisons as well as supporting interfaces and implementations.
Some useful Source implementations.
XSLT convenience layer.
Internal utilities hiding the differences between .NET and Java implementations.
Validation of XML documents and schemas.
XPath convenience layer.
XMLUnit Hamcrest Matchers 2.7.0 
Package Description
Hamcrest matchers on top of XMLUnit's core.
XMLUnit AssertJ Assertions 2.7.0 
Package Description
AssertJ assertions on top of XMLUnit's core.
Contains internal classes of XMLUnit's AssertJ support that are only public as an implementation detail.
XMLUnit Legacy 2.7.0 
Package Description
Root of the XMLUnit 1.x compatibility layer.
XMLUnit Placeholders 2.7.0 
Package Description
This package contains experimental support for configuring parts of the test engine by using ${xmlunit.KEYWORD} sequences inside the control document.
XMLUnit helps testing code that creates XML.

XMLUnit for Java is separated into three jars:

While XMLUnit is focussed on testing, parts of it may be useful in different contexts as well. The DifferenceEngine may be the driver behind a visual XML diff tool for example.

The main use case of XMLUnit is comparing XML generated by the code under test with some known source of "good XML". This is the responsibility of the DifferenceEngine and its main (currently sole) implementation DOMDifferenceEngine.

Sometimes a full comparison is more than is needed in which case only parts of the generated document are validated using XPaths. This is the responsibility of XPathEngine and its implementation JAXPXPathEngine.

The validation package contains everything needed to validate documents against XML Schema (or even the schema document itself) or a DTD. Based of JAXP's validation package the JAXPValidator class should be able to validate against different schema languages as well if you provided it with the needed implementations.

The builder package contains fluent builders that may provide an API that is more convenient to use in many cases.

A third jar xmlunit-legacy provides an API compatible to XMLUnit for Java 1.x that is implemented on top of XMLUnit Core.

XMLUnit for Java 2.6.0 adds a new experimental component xmlunit-placeholders that aims to provide a small DSL for configuring the test engine via the control XML document rather than code. The initial code base only supports a placeholder of ${xmlunit.ignore} to be used in order to make XMLUnit ignore the element containing this sequence.

XMLUnit for Java is licensed under the Apache License, Version 2.0. The legacy jar uses the three clause BSD license, the same license as XMLUnit for Java 1.x did.

Skip navigation links

Copyright © 2001–2020 XMLUnit. All rights reserved.