[ANN] Testo 0.2.0 – test library with support for snapshots, parallel runs, xfails, timeouts

Testo was designed as a feature-rich testing framework that makes common tasks easy and unusual ones possible. It is similar to Alcotest but supports more options including notably:

  • snapshotting: large output capture and diffing
  • test-driven development: write tests first, make them pass later (~expected_outcome option)
  • review test results without re-running them (status subcommand)
  • fast parallel execution supporting Windows and older OCaml versions (>= 4.08)
  • complete documentation: tutorial, howto guides, OCaml API reference
  • timeouts (new!)

We’ve been using Testo at Semgrep where we need the snapshotting feature to track the output of the semgrep command in end-to-end tests.

Changes since the last release include bugfixes, a few new command-line options, and support for timeouts. Install it now with

$ opam install testo

Testo development is an open-source community effort that happens on GitHub. It has been funded by Semgrep, my employer and fine purveyor of application security software. We’re planning for a 1.0 release once the known Windows-specific bugs are gone. No major breaking changes are in sight.

For reference, the previous announcement from last year is here.

Enjoy your free software!

10 Likes