Unit tests are necessary programs for checking the correctness of source code modules (e.g. classes). In object-oriented programming, objects interact with other objects to achieve a task. When writing unit tests for checking the interaction of the object-under-test with other objects, it is a useful technique to replace the objects with mock objects that share the same interface like the real objects. This allows the programmers to mimic the behaviour of the objects from the environment of the object-under-test. Mocking frameworks free the programmers from the tedious task of implementing mock objects.
It is usable in Boost unit test (branches/kulas/mock_framework_evaluation/gmock/eval/PainterTest_boostUnitTest.cpp) and Google Test (branches/kulas/mock_framework_evaluation/gmock/eval/PainterTest_googleTest.cpp)
It requires a compiled library
It is mainly designed for use in Google Test, but Argos uses Boost unit test.