# Test Suite |

Each Eiffel library should come with a test suite runnable with getest. The test case classes should be placed in `$GOBO/test/<library-name>` along with the Ace files, loadpath files, ESD/Xace files and the getest configuration files to run the tests.

The purpose of these tests is to make sure that the library classes work as expected (i.e. as specified by the assertions) and also to make sure that they compile correctly with compilers such as SmartEiffel which compiles only alive code.

These tests are also useful for library maintainers who have not access to all supported Eiffel compilers or to some operating systems. That way the maintainers can ask others from the Gobo development team to run the tests on other platforms or with other compilers for them.

Finally the `$GOBO/test/<library-name>` directory is used as regression test to make sure that no new bugs have been introduced between two releases.

Note: getest is based on Jim Weirich's EiffelUnit tool but has the advantage to work with all Eiffel compilers supported by the Gobo Eiffel Project.