Hello, I started to use PyUnit to build another test framework for NumPy. The ideas behind this approach are:
-- Build on a known and maybe standard framework.
-- Make tests in such a way that they can be handled with Python so helper functions can be written to perform single tests from the commandline.
-- The framework should facilitate the writing of new tests by everyone, not only for NumPy routines but also for more complex or derived programs.
-- The tests should be self contained, each test is done in a clean environment.
-- The hole test suite can be run, also if some tests are failing. This is important for all these cases, where there are known errors in the system libraries.
-- Define and document what actually is tested. There are different criteria for tests on numerical functions, like testing the interface, the numerical valid input range, type coercions, the algorithm and so on.
In the end I want to have a module which can be imported and the contained classes can be used to write new tests, perform tests and generate reports. Together with a naming convention it should be possible to automate the testing of new modules.
I have written some ideas down at:
There is also a module which is NOT the proposed framework, but which demonstrates how the code of the tests looks like.
Are there some comments, objections or new ideas?