A fancy test runner, including support for golden tests.


Version on this page:3.1.12
LTS Haskell 22.30:3.3.2
Stackage Nightly 2024-07-23:3.3.2
Latest on Hackage:3.3.2

See all snapshots tasty-silver appears in

MIT licensed by Philipp Hausmann, Roman Cheplyaka and others
Maintained by Philipp Hausmann
This version can be pinned in stack with:tasty-silver-3.1.12@sha256:d7ff8aa67ce08991640b7f80ac67398a12f083993b20431ea2925e3ea45bc2b3,2328

This package provides a fancy test runner and support for «golden testing». A golden test is an IO action that writes its result to a file. To pass the test, this output file should be identical to the corresponding «golden» file, which contains the correct result for the test. The test runner allows filtering tests using regexes, and to interactively inspect the result of golden tests. This package is a heavily extended fork of tasty-golden.



Version 3.1.12

  • Fix compilation with GHC 8.4 (thanks to asr)

Version 3.1.11

  • Fix compilation with GHC 8.4

Version 3.1.10

  • Better error handling for calls to external tools (git diff)

Version 3.1.9

  • Fix compilation with optparse-applicative 0.13.*.
  • Provide character-level diff if wdiff and colordiff are available.


  • Fix compilation with GHC 8.

Version 3.1.8

  • Make update function optional for test cases.

Version 3.1.7

  • Add feature to disable certain tests, still showing them in the UI but not running them.
  • Fix a concurrency issue in the interactive test runner.

Version 3.1.6

  • Expose regex filter modules.
  • Fix issue with regex filters when used together with withResource nodes.

Version 3.1.5

  • Add experimental –regex-include option to select tests using a regex. This option is highly experimental and may change in later versions!
  • The –regex-include/–regex-exclude option may be given multiple times now. The exclusion regexes are applied first, after that all inclusion regexes.

Version 3.1.4

  • Add experimental –regex-exclude option to filter out tests using a regex. This option is highly experimental and may change in later versions!

Version 3.1.3

  • Use package temporary instead of temporary-rc.
  • Re-add command line options for test runner which were accidentally removed.

Version 3.1.2

  • Add non-interactive mode to test runner, printing diffs/actual values directly to stdout. Useful for (travis) CI.

Version 3.1.1

  • Report success instead of failure if new result is accepted in interactive mode.

Version 3.1

  • Fixed & tested support for GHC 7.4.2 - 7.10.1
  • Added missing lower bound for bytestring
  • Removed upper bounds for most dependencies
  • Enable travis CI builds

Version 3.0 -

  • Refactored API
  • Add interactive mode


  • Warn when some tests threw exceptions during --accept
  • Properly handle exceptions; don’t swallow Ctrl-C


Restore compatibility with older compilers


Relax Cabal dependency

Version 2.2.2

Add findByExtension


Catch exceptions when accepting golden tests


Switch to temporary-rc

Version 2.2.1

  • Fix a bug where the result of the comparison function would reference yet unread data from a semiclosed file and the file gets closed, leading to a runtime exception
  • Export writeBinaryFile
  • Improve the docs
  • Update to work with tasty-0.8


Update to work with tasty-0.7


Update to work with tasty-0.5

Version 2.2

Migrate to ingredients

Version 2.1

Add goldenVsStringDiff

Version 2.0.1

Update to work with tasty-0.2

Version 2.0

Initial release of tasty-golden (derived from test-framework-golden-1.1.x)