Я мало работал с Visual Studio раньше. Я начал свой личный проект в свое свободное время, и я хотел бы использовать разработку, основанную на тестировании, поскольку она принесла мне огромную пользу при разработке Java. Я начал этот проект довольно давно, и я использовал CppUnit. Я знаю, что, вероятно, есть и другие фреймворки, которые лучше, но это то, что уже есть.
В моем решении Visual Stuido 2005 есть 2 проекта. Это работало нормально, когда модульные тесты располагались рядом с кодом приложения. По мере того, как проект увеличивался в размерах, он становился довольно громоздким и не элегантным. Я создал новый проект под мое решение для размещения модульных тестов (так что теперь у него есть 3 проекта). Все прошло хорошо, пока я не попытался построить решение. Все скомпилировано, но проект модульного теста не удалось связать. Вывод дает мне 51 «неразрешенную внешнюю символьную» ошибку (LNK2019) для того, что похоже на каждую функцию, которую вызывают мои тесты.
Насколько я могу понять, проблема в структуре каталогов, которую создает Visual Studio. Каждый проект получает свой собственный каталог, а затем ниже создаются объектные файлы и исполняемые файлы. Я думаю, проблема в том, что, хотя заголовочные файлы правильно включены в каждый модульный тест, компоновщик не может найти файлы cpp, потому что они находятся в другом каталоге. Когда не удается найти реализацию вызываемой функции, выдается ошибка 2019 года.
Прав ли я в своей оценке проблемы? Как я могу это исправить? Нужно ли полностью реорганизовывать мои проекты или это простая конфигурация компоновщика?
Спасибо