eao197 on the Web Сайт Евгения Охотникова |
[ Главная | Проекты | Описания | Об авторе | Лицензия ] |
C++ tricks: dll, static lib & unit-tests
При разработке DLL время от времени возникают сложности с организацией unit-тестов, если DLL экспортирует только часть своей функциональности, либо вообще не экспортирует ничего. В таких случаях unit-тест просто не может получить доступ к внутренним классам/функциям DLL. Это актуально для Windows, где из DLL можно вызывать только то, что было из нее экспортировано.
Как оказалось, решение данной проблемы очень простое -- достаточно оформить все внутренности DLL в виде статической библиотеки. Тогда unit-тест линкуется не с DLL, а с внутренней статической библиотекой и таким образом получает доступ ко всем подлежащим тестированию классам/функциям.
До данного фокуса я дошел своим умом, но, как оказалось, он многократно изобретался заново разными разработчиками. Жаль, что информации о нем я раньше не встречал, а то бы давно его использовал.
© 2003-2006 Е.А. Охотников
$LastChangedDate: 2006-10-20 13:20:53 +0400 (РџС‚, 20 РѕРєС‚ 2006) $