Tools
TableTest provides a suite of tools to enhance your data-driven testing workflow. Each tool serves a specific purpose and can be used independently or together.
Core Library
The foundation — a JUnit extension that enables table-driven testing with the @TableTest annotation.
- Java and Kotlin — works with both languages out of the box
- Behaviour-focused — tables document expected behaviour as readable examples
- Standard JUnit — runs alongside regular
@Testmethods with no special setup - Extensible — custom type converters, external table files, and value sets for advanced scenarios
Available on: Maven Central | Source: GitHub
IntelliJ Plugin
IDE support for working with TableTest tables inside IntelliJ IDEA. The plugin provides syntax highlighting, automatic column alignment, comment toggling, and row reordering — all with familiar keyboard shortcuts.
- Auto-formatting — press
Cmd+Option+L(macOS) orCtrl+Alt+Lto align columns - Syntax highlighting — distinct colours for headers, delimiters, values, and comments
- Language injection — automatic TableTest language support in
@TableTestannotations
Available on: JetBrains Marketplace | Source: GitHub
VS Code Extension
IDE support for working with TableTest tables inside Visual Studio Code. The extension provides syntax highlighting, automatic column alignment, and cell value normalisation for lists, sets, and maps.
- Auto-formatting — format tables via
Format Documentor theTableTest: Format All Tables in Documentcommand - Syntax highlighting — distinct colours for headers, delimiters, values, and comments
- Language injection — automatic TableTest language support in
@TableTestannotations in Java and Kotlin
Available on: VS Code Marketplace | Source: GitHub
Formatter
A formatting tool for consistent table layout across your codebase. Formats tables in Java files, Kotlin files, and standalone .table files.
- Spotless plugin for Gradle and Maven — natively supported in Spotless Gradle 8.3.0+ and Maven 3.3.0+, no extra dependencies needed
- CLI tool for standalone formatting or CI integration
- EditorConfig support — reads indent style and size from
.editorconfig
The formatter is safe by default: it returns input unchanged on parse errors, so it never breaks your build.
Available on: Maven Central | Source: GitHub
Reporter
Generates documentation from your TableTest tests. Run your tests, then run the reporter to turn test tables into readable AsciiDoc or Markdown documentation that you can publish alongside your project docs.
- Gradle plugin and Maven plugin — integrates into your build
- Custom templates — extend or replace built-in templates using Pebble
- Pass/fail indicators — rows are marked with test results in the generated output
- Custom output formats — define HTML, XML, or any format via templates
Available on: Maven Central | Source: GitHub
Claude Code Plugin
Two guided skills for writing TableTest-style tests from inside Claude Code, the AI coding assistant from Anthropic.
/spec-by-example— clarify behaviour by working through concrete examples as a table, using business language throughout; the resulting table maps directly to a@TableTest/tabletest— create@TableTestmethods with guided table design, syntax reference, and a quality checklist; handles both new tests and converting similar@Testmethods- Auto-formatting — tables are automatically aligned after every file edit via a PostToolUse hook
Install from the Claude Code CLI:
/plugin marketplace add https://tabletest.org/marketplace.json
/plugin install tabletest@tabletest.orgAvailable on: Claude Code Marketplace | Source: GitHub
Source Code
All tools are open source under Apache Licence 2.0:
- tabletest — Core library
- tabletest-intellij — IntelliJ plugin
- tabletest-vscode — VS Code extension
- tabletest-formatter — Formatting tool
- tabletest-reporter — Documentation generator
- tabletest-claude-plugin — Claude Code plugin