Часть 1.
Как предположил Ричард, я бы взглянул на тестовую среду CPPUnit . Это определенным образом определит местоположение вашей тестовой среды.
Ваши тесты могут находиться в параллельном каталоге, расположенном на высоком уровне, как в примере с Ричардом, или в подкаталогах или каталогах тестов, параллельных области, которую вы хотите протестировать.
В любом случае, будьте последовательны в структуре каталогов по всему проекту! Особенно в случае, если тесты содержатся в одном каталоге высокого уровня.
Нет ничего хуже, чем поддерживать мысленное отображение исходного кода в таком месте, как:
/project/src/component_a/piece_2/this_bit
и иметь тест (ы), расположенные где-нибудь, такие как:
/project/test/the_first_components/connection_tests/test_a
И я работал над проектами, где кто-то делал это!
Какая трата циклов мокрой посуды! 8-O Поговорим о нарушении Александром концепции качества без имени.
Гораздо лучше, если ваши тесты будут последовательно расположены в w.r.t. расположение тестируемого исходного кода:
/project/test/component_a/piece_2/this_bit/test_a
часть 2
Что касается конфигурационных файлов API, сделайте локальные копии эталонного конфига в каждой локальной тестовой области как часть тестовой среды. Настройка, которая запускается перед выполнением теста. Не разбрасывайте копии конфигурации (или данных) по всему дереву тестов.
НТН.
ура
Rob
Кстати, очень рад, что вы спрашиваете об этом сейчас, когда настраиваете!