Sancho contains the lean unit test module that we use at the MEMS Exchange.

Sancho runs tests, and provides output for tests that fail.

Sancho does not count tests passed or failed. The target is projects that do not maintain failing tests.


The pattern we follow is to write unittests in separate python files whose names all start with "utest_". Each script has one or more subclasses of sancho.utest.UTest defined, and the script ends by calling the constructors of each of these classes.

The UTest constructor runs every method method of the subclass (except for those whose names start with "_") as a test. Any test that raises any exception will cause output, but other output from tests is suppressed. If all tests in a class have common setup and shutdown code, you can put these in _pre and _post methods and the UTest will call them before and after each test.

You can run the tests directly or use the included program to run all of the utest_ scripts below the current directory.

DurusWorks Documentation