v1.10.0
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 viasnapshot-tests-json
,
snapshpt-tests-xml-legacy
andsnapshot-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 yourmodule-info.java
when upgrading.The deprecated modules will be removed with the next major version!
Note
When upgrading from a version prior to1.8.0
, instead of depending onsnapshot-tests-core
you should now
either depend onsnapshot-tests-junit5
orsnapshot-tests-junit4
.
This will become mandatory with the next major version!
Changes
-
#67: Fix inconsistent naming of structured data modules
-
#60: Internal API for plugging in test-framework specific behavior
-
#80: Use spotless and reformat whole code base
-
#87: Allow to configure diff format
-
#88: Extract diff creation into own module
-
#44/#90: Add possibility to normalize line endings (according to local git config)
-
Update to jsonassert
1.5.1
(coming from1.5.0
) -
List notable changes since last release in reference documentation
Reference Documentation
Reference documentation for this release: https://skuzzle.github.io/snapshot-tests/reference/1.10.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.10.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
testImplementation(platform("de.skuzzle.test:snapshot-tests-bom:1.10.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.10.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-junit5:1.10.0")
If you are using JUnit4:
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-junit4</artifactId>
<version>1.10.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-junit4:1.10.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.10.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-json:1.10.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.10.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-xml-legacy:1.10.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.10.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-xml:1.10.0")
If you want HTML based snapshots:
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-html</artifactId>
<version>1.10.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-html:1.10.0")
Additional utilities
Show utility artifacts
Directory Params
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-directory-params</artifactId>
<version>1.10.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-directory-params:1.10.0")
Diff-Tool
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>diff-tool</artifactId>
<version>1.10.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:diff-tool:1.10.0")
Object normalization (
<dependency>
<groupId>de.skuzzle.test</groupId>
<artifactId>snapshot-tests-normalize</artifactId>
<version>1.10.0</version>
<scope>test</scope>
</dependency>
testImplementation("de.skuzzle.test:snapshot-tests-normalize:1.10.0")