CMockery - это легкая библиотека, которая используется для автора C Unit Tests.
Тесты CMockery составлены в автономные исполняемые файлы и связаны с библиотекой CMockery, стандартной библиотекой C и тестируемым модулем. Любые символы, внешние по отношению к тестируемому модулю, должны быть высмеиваются - заменены функциями, которые возвращают значения, определяемые тестом - в тестовом приложении. Несмотря на то, что между целевой средой выполнения кодового модуля могут существовать существенные различия и среды, используемой для тестирования кода, модульное тестирование все еще действительнее, поскольку его цель - проверить логику кодовых модулей на функциональном уровне и не обязательно все его взаимодействия с целевой средой выполнения.
Возможно, невозможно компилировать модуль в тестовое приложение без некоторой модификации; Следовательно, предварительныйпроцессорный символ UNIT_TESTING должен быть определен, когда приложения для тестирования CMockery Unit будут скомпилированы, чтобы код в модуле мог быть условно скомпилирован для тестов.
Более подробную информацию о механике письменных тестов с CMockery можно найти в docs/user_guide.md .
Чтобы скомпилировать библиотеку CMockery и примеры примеров на Linux, запустите:
$ ./configure
$ make
Для компиляции в Windows запустите:
> vsvars.bat
> cd windows
> nmake
Этот код был протестирован на Linux (Ubuntu) и Windows с использованием VC ++ 7 и VC ++ 8.
Доступны различные рамки C -модульных тестирования; Тем не менее, многие из них являются довольно сложными и требуют новейшей технологии компилятора. Некоторая разработка требует использования старых компиляторов, что затрудняет использование некоторых модульных структур. Кроме того, многие фреймворки модульного тестирования предполагают, что тестируемый код представляет собой приложение или модуль, нацеленный на ту же платформу, которая в конечном итоге выполнит тест. Из -за этого предположения многие структуры требуют включения стандартных заголовков библиотеки C в тестируемый кодовый модуль, который может столкнуться с пользовательской или неполной реализацией библиотеки C, используемой тестируемой кодом.
CMockery требует, чтобы только тестовое приложение связано со стандартной библиотекой C, которая минимизирует конфликты со стандартными заголовками библиотеки C. Кроме того, Cmockery пытается избежать использования некоторых новых функций компиляторов C.
Это приводит к тому, что CMockery является относительно небольшой библиотекой, которую можно использовать для тестирования различного экзотического кода. Если разработчик желает просто протестировать приложение с новейшим компилятором, то другие модульные структуры тестирования могут быть предпочтительны.
Если у вас есть вопросы о CMockery, используйте следующие ресурсы:
Переполнение стека: используйте тег cmockery
Список рассылки: cmockery (at) GoogleGroups.com (Archives)
Чтобы присоединиться к учетной записи Google, используйте веб -интерфейс; Чтобы подписаться/отписаться с помощью произвольного адреса электронной почты, отправьте электронное письмо:
CMockery лицензирован по лицензии Apache 2.0; Пожалуйста, смотрите LICENSE.txt для получения подробной информации.