Testnizer

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:

ModeEncodes / decodes
Base64Standard (+/=) and URL-safe (-_) variants
URL Encoding%xx percent-encoding of a query string or path component
HTML Entities&amp;, &lt;, &#8220;, etc.
JWT payloadBase64URL-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.

  1. Paste the JSON document in the left pane
  2. Enter a JSONPath expression (e.g. $.store.book[*].author) in the expression bar
  3. 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.

  1. Paste the XML document
  2. Enter an XPath expression (e.g. /order/items/item[@status='shipped'])
  3. 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.

  1. Paste the XML source document
  2. Paste (or load from file) the XSLT stylesheet
  3. 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.

  1. Paste the input JSON
  2. Paste the Jolt spec
  3. 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.