Hello, I'm very happy to announce that Qtest, a tool that allows one to write tests in comments directly next to the tested functions (originally developed for testing batteries-included), and QCheck, a quickcheck clone I have been developing for a while, have been merged in the release qtest-2.2. Qtest provides facilities to write both unit tests (based on OUnit), as in (*$T [1;2;3] = List.sort compare [3;2;1] *) and quickcheck-like random tests, as in (*$Q Q.(list int) (fun l -> sort l = sort (sort l)) *) The support for random tests now relies upon qcheck. Our goal with this merge is to provide both a tool for people who want to keep tests as close as possible to their code (even for versions of OCaml that do not support ppx), and a feature-full library for people who prefer to keep their tests separate. Documentation for qcheck (the library) can be found at http://cedeela.fr/~simon/software/qcheck/ . Documentation for qtest (the tool, and how to use it) can be found at https://github.com/vincent-hugot/iTeML/blob/3bc5ecca75487771db512902d6e533ab059b8e34/README.adoc Note that this release breaks compatibility with the previous versions of qcheck (mostly because the `'a arbitrary` type is now much richer, packing together a random generator, a printer, a shrinking functions…). To upgrade tests from qcheck, it is easy to convert a random generator into an `'a arbitrary` using `QCheck.make`. For writing complex generators, Gabriel Scherer's library might be useful: https://github.com/gasche/random-generator . Cheers! -- Simon Cruanes http://weusepgp.info/ key 49AA62B6, fingerprint 949F EB87 8F06 59C6 D7D3 7D8D 4AC0 1D08 49AA 62B6