Should.ml is a little library for writing assertion statements in a domain-specific language roughly resembling plain English. This makes lengthy series of assertions (such as in unit tests) a little nicer to read - example pasted below. Through some mild abuse of objects and operators, I avoided the need for any preprocessor or syntax extension. https://github.com/mlin/should.ml opam update && opam install should Happy testing! Mike Example: open Should let int_test_case () = let x = 123 in begin x $hould # equal 123; x $hould # not # equal 0; x $hould # be # above 122; x $hould # be # at # most 124; x $hould # be # within (122,123); x $houldn't # be # within (1,3) end