Built-in tools
Reference for all ten offline tools — JWT debugger, formatters, encoders, diff, JSONPath, XPath, XSLT, Jolt, and WS-Security.
Testnizer ships ten utility tools that run entirely locally. No data is sent anywhere. Open any tool from the Tools tab in the left sidebar.
JWT Debugger
Decodes and verifies JSON Web Tokens without sending them to an online service.
Paste a JWT in the input pane and Testnizer immediately shows:
- Header — algorithm, token type, key ID
- Payload — all claims with type annotations
- Signature — raw bytes in Base64URL
For verification, enter the secret (HMAC) or paste the public key (RSA / EC / EdDSA). Testnizer runs the crypto locally and shows a ✓ / ✗ result.
See the JWT Debugger guide for the full reference.
JSON Formatter
Paste minified or malformed JSON and get:
- Pretty-printed output with configurable indent (2 or 4 spaces / tab)
- Syntax validation — exact line and column of the first error
- Key sorting — alphabetical sort of all object keys, recursively
The output pane is a Monaco editor — you can copy, search, and further edit the formatted result.
XML Formatter
Paste any XML document and get indented, human-readable output.
- Configurable indent width
- Optional declaration stripping (
<?xml version="1.0"?>) - Namespace-aware (namespaced attributes are preserved, not expanded)
- Roundtrip-safe: the formatter does not change the document’s information set
Useful for inspecting SOAP envelopes, OpenAPI XML bodies, and CI-generated configuration files.
Encode / Decode
A single tab with four codec modes:
| Mode | Encodes / decodes |
|---|---|
| Base64 | Standard (+/=) and URL-safe (-_) variants |
| URL Encoding | %xx percent-encoding of a query string or path component |
| HTML Entities | &, <, “, etc. |
| JWT payload | Base64URL-decodes the claims section of a JWT without verification |
Paste in either pane — encode or decode direction is toggled with the arrow button.
Diff Viewer
Side-by-side diff for any two text blocks — JSON, XML, plain text, or code snippets.
- Paste one document on each side
- Differences are highlighted inline (added green, removed red)
- Ignores whitespace changes when Normalise whitespace is on
- For JSON, enables Semantic diff — compares values regardless of key order or formatting
Useful for comparing two API responses, two versions of a schema, or expected vs. actual in a test failure.
JSONPath Tester
Evaluate JSONPath expressions against a JSON document.
- Paste the JSON document in the left pane
- Enter a JSONPath expression (e.g.
$.store.book[*].author) in the expression bar - Testnizer evaluates on every keystroke and shows matched nodes in the right pane
Supports both dot notation ($.foo.bar) and bracket notation ($['foo']['bar'])
and the full JSONPath predicate syntax ([?(@.price < 10)]).
Result nodes are highlighted in the source document.
XPath Tester
Same workflow as JSONPath, but for XML documents and XPath 1.0 expressions.
- Paste the XML document
- Enter an XPath expression (e.g.
/order/items/item[@status='shipped']) - Matched nodes appear in the result pane
Namespace prefixes can be declared in the Namespaces panel
(ns1: http://example.com/schema) and used in the expression
(/ns1:order/ns1:items).
Useful for writing XPath assertions in SOAP response test scripts or debugging XSLT transforms.
XSLT Transform
Apply an XSLT 1.0 stylesheet to an XML document.
- Paste the XML source document
- Paste (or load from file) the XSLT stylesheet
- Click Transform
The output document is shown in the right pane. Output method (xml,
html, text) is detected from the stylesheet’s <xsl:output> declaration.
Error messages from the XSLT processor (invalid XPath, template conflicts, etc.) appear in the error panel below the output.
Jolt Transform
Apply a Jolt specification to a JSON document.
- Paste the input JSON
- Paste the Jolt spec
- Click Transform
Supports all Jolt operation types: shift, default, remove, sort,
cardinality, and modify. The spec editor has JSON syntax highlighting and
validation.
Useful for verifying Jolt mappings used in ETL pipelines, API gateways, or event-bus transformations before deploying them.
WS-Security
A standalone workbench for building, signing, and encrypting SOAP security headers.
Supports:
- UsernameToken — password digest or plain text, with optional Timestamp
- Timestamp — standalone expiry token
- XML Signature — signs an element (typically
Body) with an X.509 certificate + RSA or EC key - XML Encryption — encrypts an element with AES-128/256-CBC or AES-GCM
This is the same engine used by the SOAP editor’s WS-Security tab — the standalone workbench lets you build and test security headers independently of a specific SOAP request.
See the WS-Security guide for step-by-step walkthroughs.