Migration Info:
Note
The following modules have been deprecated: snapshot-tests-jackson
, snapshot-tests-jaxb
and
snapshot-tests-jaxb-jakarta
. New drop-in replacements are provided via snapshot-tests-json
,
snapshpt-tests-xml-legacy
and snapshot-tests-xml
. (See also:
#67)
Important: These new modules come with slightly different Automatic-Module-Name. If you are using JPMS you need to
adjust your module-info.java
when upgrading.
The deprecated modules will be removed with the next major version!
Note
When upgrading from a version prior to 1.8.0
, instead of depending on snapshot-tests-core
you should now
either depend on snapshot-tests-junit5
or snapshot-tests-junit4
.
This will become mandatory with the next major version!
Changes
- Update to JUnit
5.10.1
(coming from5.9.2
) - Update to opentest4j
1.3.0
(coming from1.2.0
) - Update to jackson
2.16.1
(coming from2.14.2
) - Update to assertj
3.25.1
(coming from3.24.2
) - Update to jakarta.xml.bind-api
4.0.1
(coming from4.0.0
) - Update to jaxb-runtime
2.3.9
(coming from2.3.3
) - (Jakarta) Update to jaxb-runtime
4.0.4
(coming from4.0.1
)
Reference Documentation
Reference documentation for this release: https://skuzzle.github.io/snapshot-tests/reference/1.11.0
BOM Artifact
Manages the versions of all modules in case you are using multiple in your project
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-bom</artifactId>
<version>1.11.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
testImplementation(platform("de.skuzzle.test:snapshot-tests-bom:1.11.0"))
Artifacts
Choose a test framework
ℹ️ All options include support for plain text snapshots.
If you are using JUnit5:
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-junit5</artifactId>
<version>1.11.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-junit5:1.11.0")
If you are using JUnit4:
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-junit4</artifactId>
<version>1.11.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-junit4:1.11.0")
Choose a snapshot format (optional)
Show supported snapshot format artifacts
If you want JSON based snapshots:
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-json</artifactId>
<version>1.11.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-json:1.11.0")
If you want XML based snapshots using jaxb and legacy javax.xml
namespaces:
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-xml-legacy</artifactId>
<version>1.11.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-xml-legacy:1.11.0")
If you want XML based snapshots using jaxb new jakarta.xml
namespaces:
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-xml</artifactId>
<version>1.11.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-xml:1.11.0")
If you want HTML based snapshots:
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-html</artifactId>
<version>1.11.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-html:1.11.0")
Additional utilities
Show utility artifacts
Directory Params
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-directory-params</artifactId>
<version>1.11.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-directory-params:1.11.0")
Diff-Tool
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>diff-tool</artifactId>
<version>1.11.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:diff-tool:1.11.0")
Object normalization (
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-normalize</artifactId>
<version>1.11.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-normalize:1.11.0")