Мне интересно услышать об опыте использования TDD и модульного тестирования на C ++ в целом с Visual Studio 2005 (Professional)
Сначала немного предыстории. У нас довольно большой проект, и большая часть его была разработана для Linux с использованием CppUnit для модульных тестов. Проект разделен на несколько библиотек, каждая со своим набором тестов. У меня есть простой скрипт, который компилирует библиотеку, компилирует набор тестов и затем запускает тесты. Поэтому после внесения изменений в код я просто запускаю «тест» из командной строки и тесты запускаются.
В настоящее время большинство разработчиков используют Visual Studio 2005 для Windows для разработки этого продукта. Конечно, они все еще могут запускать тесты из командной строки, используя nmake, но включают дополнительные шаги, и я бы предпочел иметь гораздо более интегрированное решение.
Итак, мой вопрос состоит из двух частей.
Во-первых, каков наилучший способ размещения кода для тестов на большой кодовой базе? Нормально ли создавать несколько тестовых проектов в решении, по одному для каждой библиотеки?
Во-вторых, есть ли инструменты для интеграции тестов CppUnit в Visual Studio? С зависимостями, установленными для запуска, тестовый проект должен запускать тесты, но в настоящее время результаты все еще отображаются в командном окне.