|
Boost : |
From: Pavel Vozenilek (pavel_vozenilek_at_[hidden])
Date: 2005-02-25 20:30:56
In sandbox http://boost-sandbox.sourceforge.net/vault/
is small (1 header minitest.hpp) Boostified library
to help with testing.
I use it instead of other frameworks as it
doesn't require any work.
Example of use:
_________________________________
#include <boost/minitest.hpp>
BOOST_MINITEST
{
assert(....);
}
BOOST_MINITEST
{
assert(....);
....
}
...
boost::minitest::execute_all_tests();
_________________________________
Features:
- no helper classes, functions or naming conventions needed
- allows to execute tests randomly (I found this very helpful)
- it is possible to execute tests only from last N modified source files.
This allows to re-run tests after every minor source
modification (i.e. Test Driven Development)
- no *.cpp files
- works on systems w/o exceptions enabled, doesn't need RTTI
- works with DLLs (it is needed to "register" every DLL).
DLLs can be dynamically loaded/unloaded.
- tested with VC6, Intel 7, BCB 6. Should work on UNIXes
(I don't try yet).
- allows to re-run failed test immediatelly if user wishes
_________________________________
Disadvantages:
- tests must be written on top level (i.e. not within functions)
- no mechanism to select what "exact" tests to run is available
(by design - I found it rather useless for me)
- testing a DLLs requires few lines of support code per DLL
- the "test only few last changed files" feature is rather brittle - it
doesn't
deal with headers and dependencies (it is just quick an dirty tool)
Would this tiny tool be useful as part of Boost? - as complement
to Boost.Test. If there's interest I can write docs and add tests.
/Pavel
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk